EUDAQ
 All Classes Namespaces Files Functions Variables Pages
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
eudaq::SyncBase Class Reference

Public Types

typedef std::queue
< std::shared_ptr
< eudaq::Event > > 
eventqueue_t
 

Public Member Functions

int AddDetectorElementToProducerQueue (int fileIndex, std::shared_ptr< eudaq::DetectorEvent > dev)
 
virtual bool SyncFirstEvent ()
 
virtual bool SyncNEvents (size_t N)
 
virtual bool getNextEvent (std::shared_ptr< eudaq::DetectorEvent > &ev)
 
virtual bool compareTLUwithEventQueue (std::shared_ptr< eudaq::Event > &tlu_event, SyncBase::eventqueue_t &event_queue)
 
virtual bool compareTLUwithEventQueues (std::shared_ptr< eudaq::Event > &tlu_event)
 
void storeCurrentOrder ()
 
bool Event_Queue_Is_Empty ()
 
bool SubEventQueueIsEmpty (int i)
 
void event_queue_pop ()
 
void event_queue_pop_TLU_event ()
 
void makeDetectorEvent ()
 
void clearDetectorQueue ()
 
virtual ~SyncBase ()
 
 SyncBase (bool sync=true)
 
void addBOREEvent (int fileIndex, const eudaq::DetectorEvent &BOREvent)
 
void PrepareForEvents ()
 

Protected Member Functions

eventqueue_t & getQueuefromId (unsigned producerID)
 
eventqueue_t & getQueuefromId (unsigned fileIndex, unsigned eventIndex)
 
eventqueue_t & getFirstTLUQueue ()
 
unsigned getUniqueID (unsigned fileIndex, unsigned eventIndex)
 
unsigned getTLU_UniqueID (unsigned fileIndex)
 

Protected Attributes

std::map< unsigned, size_t > m_ProducerId2Eventqueue
 
size_t m_registertProducer
 
std::vector< size_t > m_EventsProFileReader
 
std::vector< eventqueue_t > m_ProducerEventQueue
 
std::queue< std::shared_ptr
< eudaq::DetectorEvent > > 
m_DetectorEventQueue
 
int m_TLUs_found
 
bool isAsync_
 
size_t NumberOfEventsToSync_
 
uint64_t longTimeDiff_
 
bool m_sync
 

Constructor & Destructor Documentation

virtual eudaq::SyncBase::~SyncBase ( )
inlinevirtual

The empty destructor. Need to add it to make it virtual.


The documentation for this class was generated from the following files: