Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

DataRepController.h

Go to the documentation of this file.
00001 /* -*- mode: c++ -*- */
00002 
00014 #ifndef _DataRepController_H_
00015 #define _DataRepController_H_
00016 
00017 #include "pattern/libhippo.h"
00018 
00019 
00020 #include <string>
00021 #include <vector>
00022 
00023 class DataRep;
00024 class DataSource;
00025 class NTuple;
00026 class PlotterBase;
00027 
00035 class MDL_HIPPOPLOT_API DataRepController
00036 {
00037 
00038 private:
00039 
00041   static DataRepController * s_instance;
00042 
00045   std::vector< std::string > m_null_vector;
00046 
00048   DataRepController ( const DataRepController & );
00049 
00053   bool checkBindings ( const DataSource * tuple, 
00054                        const std::vector < std::string > & bindings ) const;
00055 
00056 protected:
00057 
00060   DataRepController();
00061 
00062 public:
00063 
00065   static DataRepController * instance ();
00066 
00068   ~DataRepController();
00069 
00072   const std::vector< std::string > & 
00073   bindingOptions ( const std::string & name );
00074 
00077   const std::vector< std::string > & 
00078   bindingOptions ( DataRep * rep );
00079 
00084   DataRep * createDataRep ( const std::string & name );
00085 
00091   DataRep * 
00092   createDataRep ( const std::string & name,
00093                   const DataSource * ntuple,
00094                   const std::vector< std::string > & bindings ) const;
00095 
00098   void setAxisBindings ( DataRep * rep,
00099                          const DataSource * ntuple,
00100                          const std::vector< std::string > & bindings ) const;
00101 
00109   void changeDataSource ( DataRep * rep, const DataSource * tuple );
00110 
00111   };
00112 
00113 #endif // _DataRepController_H_

Generated for HippoDraw-1.14.8.5 by doxygen 1.4.3