Jpp 20.0.0-rc.8
the software that should make you happy
Loading...
Searching...
No Matches
JDETECTOR::JModuleStatus_t Struct Reference

Auxiliary data structure for module status. More...

#include <JDetectorCalibration.hh>

Inheritance diagram for JDETECTOR::JModuleStatus_t:
JLANG::JObjectID JLANG::JStatus JLANG::JComparable< JObjectID > JLANG::JComparable< JObjectID, int > JLANG::JEquals< JStatus >

Public Types

typedef int status_type
 

Public Member Functions

 JModuleStatus_t ()
 Default constructor.
 
 JModuleStatus_t (const JObjectID &id, const JStatus &status)
 Constructor.
 
int getID () const
 Get identifier.
 
int & getID ()
 Get identifier.
 
void setID (const int id)
 Set identifier.
 
bool less (const JObjectID &object) const
 Less than method.
 
bool less (const int id) const
 Less than method.
 
bool more (const int id) const
 More than method.
 
status_type getStatus (const JType< status_type > &type) const
 Get status.
 
JStatus getStatus (const JType< JStatus > &type) const
 Get status.
 
template<class T >
const T getStatus () const
 Get status.
 
const JStatusgetStatus () const
 Get status.
 
status_typegetStatus (const JType< status_type > &type)
 Get status.
 
JStatusgetStatus (const JType< JStatus > &type)
 Get status.
 
template<class T >
T & getStatus ()
 Get status.
 
JStatusgetStatus ()
 Get status.
 
void setStatus (const JStatus &status)
 Set status.
 
bool equals (const JStatus &status) const
 Equal method.
 
JStatus getAND (const JStatus &status) const
 Get combined status.
 
JStatus getOR (const JStatus &status) const
 Get combined status.
 
bool has (const int bit) const
 Test PMT status.
 
void set (const int bit)
 Set PMT status.
 
void reset (const int bit)
 Reset PMT status.
 

Static Public Attributes

static const int NUMBER_OF_STATUS_BITS = sizeof(status_type) * 8
 number of status bits
 

Protected Attributes

int __id
 
status_type status
 

Friends

void to_json (json &js, const JModuleStatus_t &object)
 Convert module status to JSon.
 
void from_json (const json &js, JModuleStatus_t &object)
 Convert JSon to module status.
 

Detailed Description

Auxiliary data structure for module status.

Definition at line 625 of file JDetectorCalibration.hh.

Member Typedef Documentation

◆ status_type

Definition at line 32 of file JStatus.hh.

Constructor & Destructor Documentation

◆ JModuleStatus_t() [1/2]

JDETECTOR::JModuleStatus_t::JModuleStatus_t ( )
inline

Default constructor.

Definition at line 632 of file JDetectorCalibration.hh.

633 {}

◆ JModuleStatus_t() [2/2]

JDETECTOR::JModuleStatus_t::JModuleStatus_t ( const JObjectID & id,
const JStatus & status )
inline

Constructor.

Parameters
idmodule identifier
statusmodule status

Definition at line 642 of file JDetectorCalibration.hh.

643 :
644 JObjectID(id),
646 {}
JObjectID()
Default constructor.
Definition JObjectID.hh:30
status_type status
Definition JStatus.hh:252
JStatus()
Default constructor.
Definition JStatus.hh:40

Member Function Documentation

◆ getID() [1/2]

int JLANG::JObjectID::getID ( ) const
inlineinherited

Get identifier.

Returns
identifier

Definition at line 50 of file JObjectID.hh.

51 {
52 return __id;
53 }

◆ getID() [2/2]

int & JLANG::JObjectID::getID ( )
inlineinherited

Get identifier.

Returns
identifier

Definition at line 61 of file JObjectID.hh.

62 {
63 return __id;
64 }

◆ setID()

void JLANG::JObjectID::setID ( const int id)
inlineinherited

Set identifier.

Parameters
ididentifier

Definition at line 72 of file JObjectID.hh.

73 {
74 this->__id = id;
75 }

◆ less() [1/2]

bool JLANG::JObjectID::less ( const JObjectID & object) const
inlineinherited

Less than method.

Parameters
objectobject identifier
Returns
true if this identifier less than given identifier; else false

Definition at line 84 of file JObjectID.hh.

85 {
86 return this->getID() < object.getID();
87 }
int getID() const
Get identifier.
Definition JObjectID.hh:50

◆ less() [2/2]

bool JLANG::JObjectID::less ( const int id) const
inlineinherited

Less than method.

Parameters
ididentifier
Returns
true if this identifier less than given identifier; else false

Definition at line 96 of file JObjectID.hh.

97 {
98 return this->getID() < id;
99 }

◆ more()

bool JLANG::JObjectID::more ( const int id) const
inlineinherited

More than method.

Parameters
ididentifier
Returns
true if this identifier greater than given identifier; else false

Definition at line 108 of file JObjectID.hh.

109 {
110 return this->getID() > id;
111 }

◆ getStatus() [1/8]

status_type JLANG::JStatus::getStatus ( const JType< status_type > & type) const
inlineinherited

Get status.

Returns
status

Definition at line 60 of file JStatus.hh.

61 {
62 return this->status;
63 }

◆ getStatus() [2/8]

JStatus JLANG::JStatus::getStatus ( const JType< JStatus > & type) const
inlineinherited

Get status.

Returns
status

Definition at line 71 of file JStatus.hh.

72 {
73 return *this;
74 }

◆ getStatus() [3/8]

template<class T >
const T JLANG::JStatus::getStatus ( ) const
inlineinherited

Get status.

Returns
status

Definition at line 83 of file JStatus.hh.

84 {
85 return getStatus(JType<T>());
86 }
const T getStatus() const
Get status.
Definition JStatus.hh:83

◆ getStatus() [4/8]

const JStatus & JLANG::JStatus::getStatus ( ) const
inlineinherited

Get status.

Returns
status

Definition at line 94 of file JStatus.hh.

95 {
96 return static_cast<const JStatus&>(*this);
97 }

◆ getStatus() [5/8]

status_type & JLANG::JStatus::getStatus ( const JType< status_type > & type)
inlineinherited

Get status.

Returns
status

Definition at line 105 of file JStatus.hh.

106 {
107 return this->status;
108 }

◆ getStatus() [6/8]

JStatus & JLANG::JStatus::getStatus ( const JType< JStatus > & type)
inlineinherited

Get status.

Returns
status

Definition at line 116 of file JStatus.hh.

117 {
118 return *this;
119 }

◆ getStatus() [7/8]

template<class T >
T & JLANG::JStatus::getStatus ( )
inlineinherited

Get status.

Returns
status

Definition at line 128 of file JStatus.hh.

129 {
130 return getStatus(JType<T>());
131 }

◆ getStatus() [8/8]

JStatus & JLANG::JStatus::getStatus ( )
inlineinherited

Get status.

Returns
status

Definition at line 139 of file JStatus.hh.

140 {
141 return static_cast<JStatus&>(*this);
142 }

◆ setStatus()

void JLANG::JStatus::setStatus ( const JStatus & status)
inlineinherited

Set status.

Parameters
statusstatus

Definition at line 150 of file JStatus.hh.

151 {
152 this->status = status.status;
153 }

◆ equals()

bool JLANG::JStatus::equals ( const JStatus & status) const
inlineinherited

Equal method.

Parameters
statusstatus
Returns
true if this status equal to given status; else false

Definition at line 162 of file JStatus.hh.

163 {
164 return this->status == status.status;
165 }

◆ getAND()

JStatus JLANG::JStatus::getAND ( const JStatus & status) const
inlineinherited

Get combined status.

Parameters
statusstatus
Returns
status

Definition at line 174 of file JStatus.hh.

175 {
176 return JStatus(this->status & status.status);
177 }

◆ getOR()

JStatus JLANG::JStatus::getOR ( const JStatus & status) const
inlineinherited

Get combined status.

Parameters
statusstatus
Returns
status

Definition at line 186 of file JStatus.hh.

187 {
188 return JStatus(this->status | status.status);
189 }

◆ has()

bool JLANG::JStatus::has ( const int bit) const
inlineinherited

Test PMT status.

Parameters
bitbit
Returns
true if bit is set; else false

Definition at line 198 of file JStatus.hh.

199 {
200 return (this->status & (1<<bit)) != 0;
201 }

◆ set()

void JLANG::JStatus::set ( const int bit)
inlineinherited

Set PMT status.

Parameters
bitbit

Definition at line 209 of file JStatus.hh.

210 {
211 this->status |= (1<<bit);
212 }

◆ reset()

void JLANG::JStatus::reset ( const int bit)
inlineinherited

Reset PMT status.

Parameters
bitbit

Definition at line 220 of file JStatus.hh.

221 {
222 this->status &= ~(1<<bit);
223 }

Friends And Related Symbol Documentation

◆ to_json

void to_json ( json & js,
const JModuleStatus_t & object )
friend

Convert module status to JSon.

Parameters
jsjson
objectmodule status

Definition at line 655 of file JDetectorCalibration.hh.

656 {
657 js = json{ { Id_t, object.getID() },
658 { STATUS_t, object.getStatus<JStatus::status_type>() } };
659 }
nlohmann::json json
static const std::string Id_t
static const std::string STATUS_t

◆ from_json

void from_json ( const json & js,
JModuleStatus_t & object )
friend

Convert JSon to module status.

Parameters
jsjson
objectmodule status

Definition at line 668 of file JDetectorCalibration.hh.

669 {
670 if (js.contains(DOMId_t))
671 object.setID(js.at(DOMId_t).get<int>());
672 else if (js.contains(Id_t))
673 object.setID(js.at(Id_t) .get<int>());
674 else
675 THROW(JNoValue, "Missing module identifier.");
676
677 object.setStatus(js.at(STATUS_t).get<int>());
678 }
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
static const std::string DOMId_t

Member Data Documentation

◆ __id

int JLANG::JObjectID::__id
protectedinherited

Definition at line 140 of file JObjectID.hh.

◆ NUMBER_OF_STATUS_BITS

const int JLANG::JStatus::NUMBER_OF_STATUS_BITS = sizeof(status_type) * 8
staticinherited

number of status bits

Definition at line 34 of file JStatus.hh.

◆ status

status_type JLANG::JStatus::status
protectedinherited

Definition at line 252 of file JStatus.hh.


The documentation for this struct was generated from the following file: