Go to the documentation of this file.00001 #ifndef DTLVStatus_H
00002 #define DTLVStatus_H
00003
00014
00015
00016
00017
00018
00019
00020
00021
00022 #include "CondFormats/DTObjects/interface/DTBufferTree.h"
00023 class DTChamberId;
00024
00025
00026
00027
00028 #include <string>
00029 #include <vector>
00030
00031
00032
00033
00034
00035 class DTLVStatusId {
00036
00037 public:
00038
00039 DTLVStatusId();
00040 ~DTLVStatusId();
00041
00042 int wheelId;
00043 int stationId;
00044 int sectorId;
00045
00046 };
00047
00048
00049 class DTLVStatusData {
00050
00051 public:
00052
00053 DTLVStatusData();
00054 ~DTLVStatusData();
00055
00056 int flagCFE;
00057 int flagDFE;
00058 int flagCMC;
00059 int flagDMC;
00060
00061 };
00062
00063
00064 class DTLVStatus {
00065
00066 public:
00067
00070 DTLVStatus();
00071 DTLVStatus( const std::string& version );
00072
00075 ~DTLVStatus();
00076
00079
00080 int get( int wheelId,
00081 int stationId,
00082 int sectorId,
00083 int& flagCFE,
00084 int& flagDFE,
00085 int& flagCMC,
00086 int& flagDMC ) const;
00087 int get( const DTChamberId& id,
00088 int& flagCFE,
00089 int& flagDFE,
00090 int& flagCMC,
00091 int& flagDMC ) const;
00093 const
00094 std::string& version() const;
00095 std::string& version();
00096
00098 void clear();
00099
00100 int set( int wheelId,
00101 int stationId,
00102 int sectorId,
00103 int flagCFE,
00104 int flagDFE,
00105 int flagCMC,
00106 int flagDMC );
00107 int set( const DTChamberId& id,
00108 int flagCFE,
00109 int flagDFE,
00110 int flagCMC,
00111 int flagDMC );
00112 int setFlagCFE( int wheelId,
00113 int stationId,
00114 int sectorId,
00115 int flag );
00116 int setFlagCFE( const DTChamberId& id,
00117 int flag );
00118 int setFlagDFE( int wheelId,
00119 int stationId,
00120 int sectorId,
00121 int flag );
00122 int setFlagDFE( const DTChamberId& id,
00123 int flag );
00124 int setFlagCMC( int wheelId,
00125 int stationId,
00126 int sectorId,
00127 int flag );
00128 int setFlagCMC( const DTChamberId& id,
00129 int flag );
00130 int setFlagDMC( int wheelId,
00131 int stationId,
00132 int sectorId,
00133 int flag );
00134 int setFlagDMC( const DTChamberId& id,
00135 int flag );
00136
00138 typedef std::vector< std::pair<DTLVStatusId,
00139 DTLVStatusData> >::const_iterator
00140 const_iterator;
00141 const_iterator begin() const;
00142 const_iterator end() const;
00143
00144 private:
00145
00146 std::string dataVersion;
00147
00148 std::vector< std::pair<DTLVStatusId,DTLVStatusData> > dataList;
00149
00150 DTBufferTree<int,int>* dBuf;
00151
00153 void cacheMap() const;
00154 std::string mapName() const;
00155
00156 };
00157
00158
00159 #endif // DTLVStatus_H
00160