/* * VetrocEvent.hh * * Created on: Nov 13, 2017 * Author: Hovanes Egiyan */ #ifndef VETROCAPP_SRC_VETROCEVENT_HH_ #define VETROCAPP_SRC_VETROCEVENT_HH_ #include #include #include #include #include #include #include #include #include "VetrocWord.hh" class VetrocBlockData; class VetrocEvent { protected: VetrocBlockData* blockData; unsigned headerPosition; unsigned numberOfWords; public: VetrocEvent( VetrocBlockData* data, unsigned head ) : blockData(data), headerPosition(head), numberOfWords(1) { } virtual ~VetrocEvent() { } VetrocEvent( const VetrocEvent& event ) : blockData( event.blockData ), headerPosition( event.headerPosition ), numberOfWords( event.numberOfWords ) { } VetrocEvent& operator=( const VetrocEvent& event ) { if ( this != &event ) { blockData = event.blockData; headerPosition = event.headerPosition; numberOfWords = event.numberOfWords; } return *this; } unsigned getNumberOfWords() const { return numberOfWords; } unsigned setNumberOfWords( unsigned n ) { return (this->numberOfWords = n); } const VetrocBlockData* getBlockData() const { return blockData; } const unsigned getHeaderPosition() const { return headerPosition; } }; #endif /* VETROCAPP_SRC_VETROCEVENT_HH_ */