00001 #ifndef CondTools_L1Trigger_OMDSReader_h
00002 #define CondTools_L1Trigger_OMDSReader_h
00003
00004
00005
00006
00007
00016
00017
00018
00019
00020
00021
00022
00023 #include <memory>
00024 #include "boost/shared_ptr.hpp"
00025
00026
00027 #include "CondCore/DBCommon/interface/CoralTransaction.h"
00028 #include "CondTools/L1Trigger/interface/DataManager.h"
00029 #include "RelationalAccess/IQuery.h"
00030 #include "CoralBase/AttributeList.h"
00031 #include "CoralBase/AttributeSpecification.h"
00032 #include "CoralBase/Attribute.h"
00033
00034
00035
00036 namespace l1t
00037 {
00038
00039 class OMDSReader : public DataManager
00040 {
00041
00042 public:
00043 OMDSReader( const std::string& connectString,
00044 const std::string& authenticationPath ) ;
00045
00046 virtual ~OMDSReader();
00047
00048
00049
00050
00051
00052
00053
00054
00055 typedef
00056 std::pair< std::vector< std::string >,
00057 std::vector< coral::AttributeList > >
00058 QueryResults ;
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069 const QueryResults basicQuery(
00070 const std::vector< std::string >& columnNames,
00071 const std::string& schemaName,
00072 const std::string& tableName,
00073 const std::string& conditionLHS = "",
00074 const QueryResults conditionRHS = QueryResults(),
00075
00076 const std::string& conditionRHSName = ""
00077
00078 ) const ;
00079
00080 const QueryResults basicQuery(
00081 const std::string& columnName,
00082 const std::string& schemaName,
00083 const std::string& tableName,
00084 const std::string& conditionLHS = "",
00085 const QueryResults conditionRHS = QueryResults(),
00086
00087 const std::string& conditionRHSName = ""
00088
00089 ) const ;
00090
00091 const QueryResults singleAttribute( const std::string& data ) const ;
00092
00093
00094
00095
00096
00097 private:
00098 OMDSReader(const OMDSReader&);
00099
00100 const OMDSReader& operator=(const OMDSReader&);
00101
00102
00103 cond::CoralTransaction* m_coralTransaction ;
00104 };
00105
00106 }
00107 #endif