Jpp
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Typedefs | Enumerations | Functions | Variables
JNET Namespace Reference

Interprocess communication. More...

Classes

class  JSubscription
 ControlHost subscription. More...
 
struct  JSubscriptionAll
 Auxiliary class for all subscription. More...
 
struct  JSubscriptionAny
 Auxiliary class for any subscription. More...
 
class  JSubscriptionList
 Subscription list. More...
 
class  JControlHost
 ControlHost class. More...
 
class  JControlHostObjectIterator
 Object iteration through ControlHost. More...
 
class  JControlHostObjectOutput
 Implemenation of object output through ControlHost. More...
 
class  JControlHostObjectOutput< JTypeList< JHead_t, JTail_t > >
 Implementation of object output for multiple data types. More...
 
class  JControlHostObjectOutput< JTypeList< JHead_t, JNullType > >
 Terminator class of recursive JControlHostObjectOutput class. More...
 
class  JControlHostServer
 Light-weight wrapper class around server socket. More...
 
struct  JHostname
 Auxiliary data structure for hostname and port number. More...
 
class  JMemory_t
 
class  JDispatch
 Data structure of a ControlHost message. More...
 
class  JClient
 ControlHost client manager. More...
 
class  JClientList
 List of ControlHost client managers. More...
 
class  JLigierObjectIterator
 Object iteration through ControlHost server. More...
 
class  JPrefix
 ControlHost prefix. More...
 
class  JSelect
 Wrapper class for select call. More...
 
class  JSelectReader
 Wrapper class for select call. More...
 
class  JSelectWriter
 Wrapper class for select call. More...
 
class  JServerSocket
 TCP Server socket. More...
 
class  JSocket
 Socket class. More...
 
class  JSocketAddress
 The JSocketAddress class encapsulates the sockaddr_in data structure. More...
 
class  JSocketBlocking
 Blocking socket I/O. More...
 
class  JSocketChannel
 Auxiliary class for socket channel. More...
 
class  JSocketInputChannel
 Socket input channel. More...
 
class  JSocketOutputChannel
 Socket output channel. More...
 
class  JSocketBuffer
 Auxiliary class for non-blocking socket I/O. More...
 
class  JSocketNonblockingReader
 Non-blocking socket reader. More...
 
class  JSocketNonblockingWriter
 Non-blocking socket writer. More...
 
class  JSocketStatus
 Auxiliary class for non-blocking socket I/O. More...
 
class  JTag
 ControlHost tag. More...
 
class  JUDPSocket
 Server socket. More...
 

Typedefs

typedef JControlHost ControlHost
 Match name. More...
 
typedef JControlHostServer ControlServ
 Match name. More...
 
typedef JPrefix JPrefix_t
 
typedef JSocketInputChannel
< JPrefix_t
JSocketInputChannel_t
 
typedef JSocketBuffer< char > JSocketInputBuffer
 
typedef JSocketBuffer< const char > JSocketOutputBuffer
 
typedef long long int JTag_t
 Type definition of numerical ControlHost tag. More...
 

Enumerations

enum  JSubscription_t { SUBSCRIBE_ALL = 'a', SUBSCRIBE_ANY = 'w' }
 ControlHost subscription types. More...
 

Functions

template<>
int getSizeOfPacket (const KM3NETDAQ::JDAQAbstractPreamble &preamble)
 
JSubscriptionList operator+ (const JSubscription &first, const JSubscription &second)
 Add operator. More...
 
JSubscriptionList operator+ (const JSubscriptionList &first, const JSubscription &second)
 Add operator. More...
 
int getSizeOfPacket (const JPrefix_t &prefix)
 Get total size of internet packet. More...
 
void setSizeOfPacket (const int size, JPrefix_t &prefix)
 Set total size of internet packet. More...
 
std::ostream & operator<< (std::ostream &out, const JDispatch &message)
 Print message. More...
 
std::ostream & operator<< (std::ostream &out, const JSocket &socket)
 Print socket. More...
 
std::ostream & operator<< (std::ostream &out, const JSocketStatus &status)
 Print socket status. More...
 
std::ostream & operator<< (std::ostream &out, const JSocketInputBuffer &buffer)
 Print socket input buffer. More...
 
bool operator< (const JTag &first, const JTag &second)
 Less than operator for JTag. More...
 
bool operator== (const JTag &first, const JTag &second)
 Equal operator for JTag. More...
 
bool operator!= (const JTag &first, const JTag &second)
 Not equal operator for JTag. More...
 

Variables

static const std::string CHOO_VERSION = "1.0"
 
static const int DISPATCH_PORT = 5553
 Default ControlHost port. More...
 
static const size_t TAGSIZE = sizeof(JTag_t)
 
static const JTag DISPTAG_Subscribe ("_Subscri")
 Special ControlHost tags. More...
 
static const JTag DISPTAG_Gime ("_Gime")
 
static const JTag DISPTAG_Always ("_Always")
 
static const JTag DISPTAG_MyId ("_MyId")
 
static const JTag DISPTAG_Born ("Born")
 
static const JTag DISPTAG_Died ("Died")
 
static const JTag DISPTAG_ShowStat ("_ShowSta")
 
static const JTag DISPTAG_WhereIs ("_WhereIs")
 
static const JTag DISPTAG_Version ("_Version")
 
static const JTag DISPTAG_UNDEFINED (0)
 

Detailed Description

Interprocess communication.

Author
mdejong
cpellegrino

Typedef Documentation

Match name.

Definition at line 676 of file JControlHost.hh.

Match name.

Definition at line 70 of file JControlHostServer.hh.

Definition at line 28 of file JLigier.cc.

Definition at line 29 of file JLigier.cc.

Definition at line 109 of file JSocketNonblocking.hh.

Definition at line 110 of file JSocketNonblocking.hh.

typedef long long int JNET::JTag_t

Type definition of numerical ControlHost tag.

Definition at line 28 of file JTag.hh.

Enumeration Type Documentation

ControlHost subscription types.

Enumerator
SUBSCRIBE_ALL 
SUBSCRIBE_ANY 

Definition at line 38 of file JControlHost.hh.

38  {
39  SUBSCRIBE_ALL = 'a',
40  SUBSCRIBE_ANY = 'w'
41  //SUBSCRIBE_SHARED_MEMORY = 'm'
42  };

Function Documentation

template<>
int JNET::getSizeOfPacket ( const KM3NETDAQ::JDAQAbstractPreamble preamble)
inline

Definition at line 81 of file JDataFilter.cc.

82  {
83  return preamble.getLength();
84  }
int getLength() const
Get length.
JSubscriptionList JNET::operator+ ( const JSubscription first,
const JSubscription second 
)
inline

Add operator.

Parameters
firstsubscription
secondsubscription
Returns
subscription list

Definition at line 189 of file JControlHost.hh.

190  {
191  JSubscriptionList buffer;
192 
193  buffer.add(first);
194  buffer.add(second);
195 
196  return buffer;
197  }
Subscription list.
JSubscriptionList & add(const JSubscription &subscription)
Add subscription.
JSubscriptionList JNET::operator+ ( const JSubscriptionList first,
const JSubscription second 
)
inline

Add operator.

Parameters
firstsubscription list
secondsubscription
Returns
subscription list

Definition at line 207 of file JControlHost.hh.

208  {
209  JSubscriptionList buffer(first);
210 
211  buffer.add(second);
212 
213  return buffer;
214  }
Subscription list.
int JNET::getSizeOfPacket ( const JPrefix_t &  prefix)
inline

Get total size of internet packet.

Get size of data, including the header.

Parameters
prefixprefix
Returns
number of bytes

This method should be implemented for each template class for read operations.

Parameters
prefixprefix
Returns
number of bytes

Definition at line 38 of file JLigier.cc.

39  {
40  return prefix.getSize() + sizeof(JPrefix_t);
41  }
JPrefix JPrefix_t
Definition: JLigier.cc:28
void JNET::setSizeOfPacket ( const int  size,
JPrefix_t &  prefix 
)
inline

Set total size of internet packet.

Set size of data, including the header.

Parameters
sizenumber of bytes
prefixprefix

This method should be implemented for each template class for write operations.

Parameters
prefixprefix
sizenumber of bytes

Definition at line 50 of file JLigier.cc.

51  {
52  prefix.setSize(size - sizeof(JPrefix_t));
53  }
JPrefix JPrefix_t
Definition: JLigier.cc:28
std::ostream& JNET::operator<< ( std::ostream &  out,
const JDispatch &  message 
)
inline

Print message.

Parameters
outoutput stream
messagemessage
Returns
output stream

Definition at line 497 of file JLigier.cc.

498  {
499  return out << "(" << message.getTag() << "," << message.size() << ")";
500  }
std::ostream& JNET::operator<< ( std::ostream &  out,
const JSocket &  socket 
)
inline

Print socket.

Parameters
outoutput stream
socketsocket
Returns
output stream

Definition at line 510 of file JLigier.cc.

511  {
512  return out << "[" << socket.getFileDescriptor() << "]";
513  }
std::ostream& JNET::operator<< ( std::ostream &  out,
const JSocketStatus &  status 
)
inline

Print socket status.

Parameters
outoutput stream
statussocket status
Returns
output stream

Definition at line 523 of file JLigier.cc.

524  {
525  return out << "(" << status.isReady() << "," << status.getCounter() << ")";
526  }
std::ostream& JNET::operator<< ( std::ostream &  out,
const JSocketInputBuffer &  buffer 
)
inline

Print socket input buffer.

Parameters
outoutput stream
buffersocket buffer
Returns
output stream

Definition at line 536 of file JLigier.cc.

537  {
538  return out << "(" << buffer.isReady() << "," << buffer.getCounter() << "," << buffer.getSize() << ")";
539  }
bool JNET::operator< ( const JTag first,
const JTag second 
)
inline

Less than operator for JTag.

Parameters
firsttag
secondtag
Returns

Definition at line 260 of file JTag.hh.

261  {
262  return first.getID() < second.getID();
263  }
JTag_t getID() const
Get identifier.
Definition: JTag.hh:143
bool JNET::operator== ( const JTag first,
const JTag second 
)
inline

Equal operator for JTag.

Parameters
firsttag
secondtag
Returns

Definition at line 273 of file JTag.hh.

274  {
275  return first.getID() == second.getID();
276  }
JTag_t getID() const
Get identifier.
Definition: JTag.hh:143
bool JNET::operator!= ( const JTag first,
const JTag second 
)
inline

Not equal operator for JTag.

Parameters
firsttag
secondtag
Returns

Definition at line 286 of file JTag.hh.

287  {
288  return first.getID() != second.getID();
289  }
JTag_t getID() const
Get identifier.
Definition: JTag.hh:143

Variable Documentation

const std::string JNET::CHOO_VERSION = "1.0"
static

Definition at line 32 of file JControlHost.hh.

const int JNET::DISPATCH_PORT = 5553
static

Default ControlHost port.

Definition at line 24 of file JHostname.hh.

const size_t JNET::TAGSIZE = sizeof(JTag_t)
static

Definition at line 29 of file JTag.hh.

const JTag JNET::DISPTAG_Subscribe("_Subscri")
static

Special ControlHost tags.

const JTag JNET::DISPTAG_Gime("_Gime")
static
const JTag JNET::DISPTAG_Always("_Always")
static
const JTag JNET::DISPTAG_MyId("_MyId")
static
const JTag JNET::DISPTAG_Born("Born")
static
const JTag JNET::DISPTAG_Died("Died")
static
const JTag JNET::DISPTAG_ShowStat("_ShowSta")
static
const JTag JNET::DISPTAG_WhereIs("_WhereIs")
static
const JTag JNET::DISPTAG_Version("_Version")
static
const JTag JNET::DISPTAG_UNDEFINED(0)
static