#ifndef __JTRIGGER__JMODULEHEADER__ #define __JTRIGGER__JMODULEHEADER__ #include "km3net-dataformat/online/JDAQChronometer.hh" #include "km3net-dataformat/online/JDAQModuleIdentifier.hh" #include "JGeometry3D/JPosition3D.hh" /** * \author mdejong */ namespace JTRIGGER {} namespace JPP { using namespace JTRIGGER; } namespace JTRIGGER { using KM3NETDAQ::JDAQChronometer; using KM3NETDAQ::JDAQModuleIdentifier; using JGEOMETRY3D::JPosition3D; /** * Header for Module. */ struct JModuleHeader : public JDAQChronometer, public JDAQModuleIdentifier, public JPosition3D { /** * Default constructor. */ JModuleHeader() : JDAQChronometer (), JDAQModuleIdentifier(), JPosition3D () {} /** * Constructor. * * \param chronometer DAQ chronometer * \param id module identifier * \param pos module position */ JModuleHeader(const JDAQChronometer& chronometer, const JDAQModuleIdentifier& id, const JPosition3D& pos) : JDAQChronometer (chronometer), JDAQModuleIdentifier(id), JPosition3D (pos) {} /** * Get module header. * * \return module header */ const JModuleHeader& getModuleHeader() const { return static_cast(*this); } /** * Set module header. * * \param header module header */ void setModuleHeader(const JModuleHeader& header) { static_cast(*this) = header; } }; } #endif