Jpp
Public Types | Public Member Functions | List of all members
JNET::JSubscriptionList Class Reference

Subscription list. More...

#include <JControlHost.hh>

Inheritance diagram for JNET::JSubscriptionList:
std::set< JSubscription > JMATH::JMath< JSubscriptionList >

Public Types

typedef std::set< JSubscription >::const_iterator const_iterator
 
typedef std::set< JSubscription >::const_reverse_iterator const_reverse_iterator
 

Public Member Functions

 JSubscriptionList ()
 Default constructor. More...
 
 JSubscriptionList (const JSubscription &subscription)
 Copy constructor. More...
 
const std::set< JSubscription > * operator-> () const
 Smart pointer. More...
 
JSubscriptionListadd (const JSubscription &subscription)
 Add subscription. More...
 
JSubscriptionListadd (const JSubscriptionList &subscription)
 Add subscription. More...
 
std::string toString () const
 Convert subscription list to string. More...
 
JSubscriptionListmul (const JSecond_t &object)
 Multiply with object. More...
 

Detailed Description

Subscription list.

Definition at line 130 of file JControlHost.hh.

Member Typedef Documentation

◆ const_iterator

Definition at line 136 of file JControlHost.hh.

◆ const_reverse_iterator

Definition at line 137 of file JControlHost.hh.

Constructor & Destructor Documentation

◆ JSubscriptionList() [1/2]

JNET::JSubscriptionList::JSubscriptionList ( )
inline

Default constructor.

Definition at line 143 of file JControlHost.hh.

144  {}

◆ JSubscriptionList() [2/2]

JNET::JSubscriptionList::JSubscriptionList ( const JSubscription subscription)
inline

Copy constructor.

Parameters
subscriptionsubscription

Definition at line 152 of file JControlHost.hh.

153  {
154  add(subscription);
155  }

Member Function Documentation

◆ operator->()

const std::set<JSubscription>* JNET::JSubscriptionList::operator-> ( ) const
inline

Smart pointer.

Returns
pointer to set

Definition at line 163 of file JControlHost.hh.

164  {
165  return static_cast<const std::set<JSubscription>*>(this);
166  }

◆ add() [1/2]

JSubscriptionList& JNET::JSubscriptionList::add ( const JSubscription subscription)
inline

Add subscription.

Parameters
subscriptionsubscription

Definition at line 174 of file JControlHost.hh.

175  {
176  const_iterator p = this->find(subscription);
177 
178  if (p != this->end() && p->getID() == subscription.getID()) {
179 
180  if (p-> getSubscription() == SUBSCRIBE_ALL ||
181  subscription.getSubscription() == SUBSCRIBE_ANY)
182  return *this; // maintain higher subscription level
183  else
184  this->erase(p); // remove lower subscription level
185  }
186 
187  this->insert(subscription);
188 
189  return *this;
190  }

◆ add() [2/2]

JSubscriptionList& JNET::JSubscriptionList::add ( const JSubscriptionList subscription)
inline

Add subscription.

Parameters
subscriptionsubscription
Returns
this subscription

Definition at line 199 of file JControlHost.hh.

200  {
201  for (JSubscriptionList::const_iterator i = subscription.begin(); i != subscription.end(); ++i) {
202  this->add(*i);
203  }
204 
205  return *this;
206  }

◆ toString()

std::string JNET::JSubscriptionList::toString ( ) const
inline

Convert subscription list to string.

Returns
subscription

Definition at line 214 of file JControlHost.hh.

215  {
216  std::string buffer;
217 
218  for (const_iterator i = this->begin(); i != this->end(); ++i)
219  buffer += ' ' + i->toString();
220 
221  return buffer;
222  }

◆ mul()

JSubscriptionList & JMATH::JMath< JSubscriptionList , JSecond_t >::mul ( const JSecond_t &  object)
inlineinherited

Multiply with object.

Parameters
objectobject
Returns
result object

Definition at line 273 of file JMath.hh.

274  {
275  return static_cast<JFirst_t&>(*this) = JCalculator<JFirst_t>::calculator.mul(static_cast<const JFirst_t&>(*this), object);
276  }

The documentation for this class was generated from the following file:
JNET::SUBSCRIBE_ALL
Definition: JControlHost.hh:40
std::set< JSubscription >
JNET::SUBSCRIBE_ANY
Definition: JControlHost.hh:41
JNET::JTag::getID
JTag_t getID() const
Get identifier.
Definition: JTag.hh:143
JNET::JSubscriptionList::add
JSubscriptionList & add(const JSubscription &subscription)
Add subscription.
Definition: JControlHost.hh:174
KM3NETDAQ::getSubscription
JSubscriptionList getSubscription(const JEventTable &event_table)
Convert event table to ControlHost subscription.
Definition: JEventTable.hh:129
JMATH::JCalculator
Auxiliary class for arithmetic operations on objects.
Definition: JCalculator.hh:18
JNET::JSubscription::getSubscription
JSubscription_t getSubscription() const
Get subscription type.
Definition: JControlHost.hh:71
JNET::JSubscriptionList::const_iterator
std::set< JSubscription >::const_iterator const_iterator
Definition: JControlHost.hh:136