Jpp  16.0.1
the software that should make you happy
 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)
 Get size of packeet. More...
 
JSubscriptionList operator+ (const JSubscription &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)
 Size of ControlHost tag. More...
 
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_Debug ("_Debug")
 
static const JTag DISPTAG_UNDEFINED (0)
 

Detailed Description

Interprocess communication.

Author
mdejong
cpellegrino

Typedef Documentation

Match name.

Definition at line 702 of file JControlHost.hh.

Match name.

Definition at line 70 of file JControlHostServer.hh.

Definition at line 29 of file JLigier.cc.

Definition at line 30 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 31 of file JTag.hh.

Enumeration Type Documentation

ControlHost subscription types.

Enumerator
SUBSCRIBE_ALL 
SUBSCRIBE_ANY 

Definition at line 40 of file JControlHost.hh.

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

Function Documentation

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

Get size of packeet.

Parameters
preambleDAQ data preamble
Returns
size [B]

Definition at line 76 of file JDataFilter.cc.

77  {
78  return preamble.getLength();
79  }
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 234 of file JControlHost.hh.

235  {
236  JSubscriptionList buffer;
237 
238  buffer.add(first);
239  buffer.add(second);
240 
241  return buffer;
242  }
Subscription list.
JSubscriptionList & add(const JSubscription &subscription)
Add subscription.
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 39 of file JLigier.cc.

40  {
41  return prefix.getSize() + sizeof(JPrefix_t);
42  }
JPrefix JPrefix_t
Definition: JLigier.cc:29
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
sizenumber of bytes
prefixprefix

Definition at line 51 of file JLigier.cc.

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

Print message.

Parameters
outoutput stream
messagemessage
Returns
output stream

Definition at line 521 of file JLigier.cc.

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

Print socket.

Parameters
outoutput stream
socketsocket
Returns
output stream

Definition at line 534 of file JLigier.cc.

535  {
536  return out << "[" << socket.getFileDescriptor() << "]";
537  }
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 547 of file JLigier.cc.

548  {
549  return out << "(" << status.isReady() << "," << status.getCounter() << ")";
550  }
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 560 of file JLigier.cc.

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

Less than operator for JTag.

Parameters
firsttag
secondtag
Returns

Definition at line 265 of file JTag.hh.

266  {
267  return first.getID() < second.getID();
268  }
JTag_t getID() const
Get identifier.
Definition: JTag.hh:160
bool JNET::operator== ( const JTag first,
const JTag second 
)
inline

Equal operator for JTag.

Parameters
firsttag
secondtag
Returns

Definition at line 278 of file JTag.hh.

279  {
280  return first.getID() == second.getID();
281  }
JTag_t getID() const
Get identifier.
Definition: JTag.hh:160
bool JNET::operator!= ( const JTag first,
const JTag second 
)
inline

Not equal operator for JTag.

Parameters
firsttag
secondtag
Returns

Definition at line 291 of file JTag.hh.

292  {
293  return first.getID() != second.getID();
294  }
JTag_t getID() const
Get identifier.
Definition: JTag.hh:160

Variable Documentation

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

Definition at line 34 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

Size of ControlHost tag.

Definition at line 32 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_Debug("_Debug")
static
const JTag JNET::DISPTAG_UNDEFINED(0)
static