00001 /* -*- mode: c++ -*- */ 00002 00014 #ifndef _QtRootController_H_ 00015 #define _QtRootController_H_ 00016 00017 #include <string> 00018 #include <vector> 00019 00020 namespace hippodraw { 00021 00022 class RootController; 00023 class DataSource; 00024 class PyDataSource; 00033 class QtRootController 00034 { 00035 00036 private: 00037 00039 static QtRootController * s_instance; 00040 00042 static RootController * m_instance; 00043 00045 QtRootController (); 00046 00048 QtRootController ( const QtRootController &); 00049 00050 public: 00051 00054 static QtRootController * instance (); 00055 00058 DataSource * createNTuple ( const std::string & filename, 00059 const std::string & treename ); 00060 00063 PyDataSource * createDataArray ( const std::string & filename, 00064 const std::string & treename ); 00065 00068 const std::vector < std::string > & 00069 getNTupleNames ( const std::string & filename ); 00070 00071 }; 00072 00073 } // namespace hippodraw 00074 00075 #endif // _QtRootController_H_