Back to home page

EIC code displayed by LXR

 
 

    


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