CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EndLumiSectMsgData.cc
Go to the documentation of this file.
1 // $Id: EndLumiSectMsgData.cc,v 1.9 2011/03/07 15:31:32 mommsen Exp $
3 
5 
6 #include "interface/evb/version.h"
7 #include "interface/evb/i2oEVBMsgs.h"
8 #include "interface/shared/i2oXFunctionCodes.h"
9 #include "interface/shared/version.h"
10 
11 
12 namespace stor
13 {
14 
15  namespace detail
16  {
17 
18  EndLumiSectMsgData::EndLumiSectMsgData(toolbox::mem::Reference* pRef):
19  ChainData(I2O_EVM_LUMISECTION),
20  runNumber_(0),
21  lumiSection_(0)
22  {
23  expectedNumberOfFragments_ = 1; //EoLS has always only one fragment
24  addFirstFragment(pRef);
25  // EoLS message from EVM does not have an initial header.
26  // Thus, reset this faulty bit
28 
29  if ( !faulty() )
30  {
31  I2O_EVM_END_OF_LUMISECTION_MESSAGE_FRAME* msg_frame =
32  (I2O_EVM_END_OF_LUMISECTION_MESSAGE_FRAME*)( pRef->getDataLocation() );
33  if (msg_frame)
34  {
35  runNumber_ = msg_frame->runNumber;
36  lumiSection_ = msg_frame->lumiSection;
37  }
38  }
39  }
40 
41  } // namespace detail
42 
43 } // namespace stor
44 
45 
46 
static const char runNumber_[]
void addFirstFragment(toolbox::mem::Reference *)
Definition: ChainData.cc:115
unsigned int expectedNumberOfFragments_
Definition: ChainData.h:163
EndLumiSectMsgData(toolbox::mem::Reference *pRef)
unsigned int faultyBits_
Definition: ChainData.h:157
bool faulty() const
Definition: ChainData.cc:90