Go to the documentation of this file.00001 #ifndef EventFilter_StorageManager_FragKey_h
00002 #define EventFilter_StorageManager_FragKey_h
00003
00004
00005
00006
00007
00008
00009 #include "IOPool/Streamer/interface/MsgTools.h"
00010
00011 namespace stor
00012 {
00013
00014 struct FragKey
00015 {
00017 FragKey(uint8 msgcode, uint32 run, uint32 event, uint32 secondaryId):
00018 code_(msgcode), run_(run), event_(event), secondaryId_(secondaryId) {}
00019 FragKey(uint8 msgcode, uint32 run, uint32 event, uint32 secondaryId,
00020 uint32 originatorPid, uint32 originatorGuid):
00021 code_(msgcode), run_(run), event_(event), secondaryId_(secondaryId),
00022 originatorPid_(originatorPid), originatorGuid_(originatorGuid) {}
00023 bool operator<(FragKey const& b) const {
00024 if(code_ != b.code_) return code_ < b.code_;
00025 if(run_ != b.run_) return run_ < b.run_;
00026 if(event_ != b.event_) return event_ < b.event_;
00027 if(originatorPid_ != b.originatorPid_) return originatorPid_ < b.originatorPid_;
00028 if(originatorGuid_ != b.originatorGuid_) return originatorGuid_ < b.originatorGuid_;
00029 return secondaryId_ < b.secondaryId_;
00030 }
00031
00032 uint8 code_;
00033 uint32 run_;
00034 uint32 event_;
00035
00036
00037
00038 uint32 secondaryId_;
00039 uint32 originatorPid_;
00040 uint32 originatorGuid_;
00041 };
00042
00043 }
00044
00045 #endif