Warning, /include/Geant4/tools/sg/plottable is written in an unsupported language. File is not indexed.
0001 // Copyright (C) 2010, Guy Barrand. All rights reserved.
0002 // See the file tools.license for terms.
0003
0004 #ifndef tools_sg_plottable
0005 #define tools_sg_plottable
0006
0007 #include <string>
0008
0009 #include "../scast"
0010 #include "../S_STRING"
0011
0012 namespace tools {
0013 namespace sg {
0014
0015 class plottable {
0016 public:
0017 TOOLS_SCLASS(tools::sg::plottable)
0018 public:
0019 virtual void* cast(const std::string& a_class) const {
0020 if(void* p = cmp_cast<plottable>(this,a_class)) {return p;}
0021 return 0;
0022 }
0023 public:
0024 virtual ~plottable() {}
0025 public:
0026 virtual plottable* copy() const = 0;
0027 virtual bool is_valid() const = 0;
0028 virtual void infos(const std::string&,std::string&) const = 0;
0029
0030 virtual const std::string& name() const = 0;
0031 virtual void set_name(const std::string&) = 0;
0032
0033 virtual const std::string& title() const = 0;
0034 virtual const std::string& legend() const = 0;
0035 virtual void set_legend(const std::string&) = 0;
0036
0037 //virtual unsigned int dimension() const = 0;
0038 };
0039
0040 class plotprim {
0041 public:
0042 virtual ~plotprim(){}
0043 public:
0044 virtual void* cast(const std::string&) const = 0;
0045 virtual plotprim* copy() const = 0;
0046 };
0047
0048 }}
0049
0050 #endif