BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnDataReceiver Class Reference

#include <BmnDataReceiver.h>

Inheritance diagram for BmnDataReceiver:
Collaboration diagram for BmnDataReceiver:

Classes

struct  serverIface
struct  serverInfo

Public Member Functions

 BmnDataReceiver ()
virtual ~BmnDataReceiver ()
Int_t ConnectRaw ()
Int_t Connect ()
Int_t SendHello ()
Int_t InitRecvStream ()
void FreeRecvStream ()
Int_t IterRecvStream ()
Int_t RecvData ()
void SetDataQueue (deque< UInt_t > v)
deque< UInt_t > * GetDataQueue ()
 BmnDataReceiver ()
virtual ~BmnDataReceiver ()
Int_t ConnectRaw ()
Int_t Connect ()
Int_t SendHello ()
Int_t InitRecvStream ()
void FreeRecvStream ()
Int_t IterRecvStream ()
Int_t RecvData ()
void SetDataQueue (deque< UInt_t > v)
deque< UInt_t > * GetDataQueue ()
Public Member Functions inherited from TNamed
 TNamed ()
 TNamed (const char *name, const char *title)
 TNamed (const TNamed &named)
 TNamed (const TString &name, const TString &title)
virtual ~TNamed ()
void Clear (Option_t *option="") override
TObject * Clone (const char *newname="") const override
Int_t Compare (const TObject *obj) const override
void Copy (TObject &named) const override
virtual void FillBuffer (char *&buffer)
const char * GetName () const override
const char * GetTitle () const override
ULong_t Hash () const override
TClass * IsA () const override
Bool_t IsSortable () const override
void ls (Option_t *option="") const override
TNamed & operator= (const TNamed &rhs)
void Print (Option_t *option="") const override
virtual void SetName (const char *name)
virtual void SetNameTitle (const char *name, const char *title)
virtual void SetTitle (const char *title="")
virtual Int_t Sizeof () const
void Streamer (TBuffer &) override
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
Public Member Functions inherited from TObject
 TObject ()
 TObject (const TObject &object)
virtual ~TObject ()
void AbstractMethod (const char *method) const
virtual void AppendPad (Option_t *option="")
virtual void Browse (TBrowser *b)
ULong_t CheckedHash ()
virtual const char * ClassName () const
virtual void Delete (Option_t *option="")
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
virtual void Draw (Option_t *option="")
virtual void DrawClass () const
virtual TObject * DrawClone (Option_t *option="") const
virtual void Dump () const
virtual void Error (const char *method, const char *msgfmt,...) const
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
virtual void Fatal (const char *method, const char *msgfmt,...) const
virtual TObject * FindObject (const char *name) const
virtual TObject * FindObject (const TObject *obj) const
virtual Option_t * GetDrawOption () const
virtual const char * GetIconName () const
virtual char * GetObjectInfo (Int_t px, Int_t py) const
virtual Option_t * GetOption () const
virtual UInt_t GetUniqueID () const
virtual Bool_t HandleTimer (TTimer *timer)
Bool_t HasInconsistentHash () const
virtual void Info (const char *method, const char *msgfmt,...) const
virtual Bool_t InheritsFrom (const char *classname) const
virtual Bool_t InheritsFrom (const TClass *cl) const
virtual void Inspect () const
void InvertBit (UInt_t f)
Bool_t IsDestructed () const
virtual Bool_t IsEqual (const TObject *obj) const
virtual Bool_t IsFolder () const
R__ALWAYS_INLINE Bool_t IsOnHeap () const
R__ALWAYS_INLINE Bool_t IsZombie () const
void MayNotUse (const char *method) const
virtual Bool_t Notify ()
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
void operator delete (void *ptr)
void operator delete (void *ptr, void *vp)
void operator delete[] (void *ptr)
void operator delete[] (void *ptr, void *vp)
void * operator new (size_t sz)
void * operator new (size_t sz, void *vp)
void * operator new[] (size_t sz)
void * operator new[] (size_t sz, void *vp)
TObject & operator= (const TObject &rhs)
virtual void Paint (Option_t *option="")
virtual void Pop ()
virtual Int_t Read (const char *name)
virtual void RecursiveRemove (TObject *obj)
void ResetBit (UInt_t f)
virtual void SaveAs (const char *filename="", Option_t *option="") const
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
void SetBit (UInt_t f)
void SetBit (UInt_t f, Bool_t set)
virtual void SetDrawOption (Option_t *option="")
virtual void SetUniqueID (UInt_t uid)
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
virtual void SysError (const char *method, const char *msgfmt,...) const
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
Int_t TestBits (UInt_t f) const
virtual void UseCurrentStyle ()
virtual void Warning (const char *method, const char *msgfmt,...) const
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const

Private Member Functions

void InitSocks ()
void DeinitSocks ()
void InitSocks ()
void DeinitSocks ()

Static Private Member Functions

static Int_t ParsePNPMsg (char *msgStr, serverInfo *sInfo)
static Int_t ParsePNPMsg (char *msgStr, serverInfo *sInfo)

Private Attributes

deque< UInt_t > data_queue
void * _ctx
void * _socket_mcast
void * _socket_data
Int_t _sfd
struct serverInfo _dataServer
struct addrinfo * dataAddrInfo
Bool_t isListening
Bool_t isAddr = kFALSE

Additional Inherited Members

Public Types inherited from TObject
enum  EDeprecatedStatusBits
enum  EStatusBits
Static Public Member Functions inherited from TNamed
static TClass * Class ()
static const char * Class_Name ()
static constexpr Version_t Class_Version ()
static const char * DeclFileName ()
Static Public Member Functions inherited from TObject
static TClass * Class ()
static const char * Class_Name ()
static constexpr Version_t Class_Version ()
static const char * DeclFileName ()
static Longptr_t GetDtorOnly ()
static Bool_t GetObjectStat ()
static void SetDtorOnly (void *obj)
static void SetObjectStat (Bool_t stat)
Public Attributes inherited from TObject
 kIsOnHeap
 kNotDeleted
 kZombie
 kInconsistent
 kBitMask
 kSingleKey
 kOverwrite
 kWriteDelete
 kObjInCanvas
 kCanDelete
 kMustCleanup
 kIsReferenced
 kHasUUID
 kCannotPick
 kNoContextMenu
 kInvalidObject
Protected Member Functions inherited from TNamed
void SavePrimitiveNameTitle (std::ostream &out, const char *variable_name)
Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
void MakeZombie ()
Static Protected Member Functions inherited from TObject
static void SavePrimitiveConstructor (std::ostream &out, TClass *cl, const char *variable_name, const char *constructor_agrs="", Bool_t empty_line=kTRUE)
static void SavePrimitiveDraw (std::ostream &out, const char *variable_name, Option_t *option=nullptr)
static TString SavePrimitiveVector (std::ostream &out, const char *prefix, Int_t len, Double_t *arr, Bool_t empty_line=kFALSE)
Protected Attributes inherited from TNamed
TString fName
TString fTitle
Protected Attributes inherited from TObject
 kOnlyPrepStep

Detailed Description

Definition at line 32 of file BmnDataReceiver.h.

Constructor & Destructor Documentation

◆ BmnDataReceiver() [1/2]

BmnDataReceiver::BmnDataReceiver ( )

Definition at line 33 of file BmnDataReceiver.cxx.

References InitSocks().

Referenced by ParsePNPMsg().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ~BmnDataReceiver() [1/2]

BmnDataReceiver::~BmnDataReceiver ( )
virtual

Definition at line 40 of file BmnDataReceiver.cxx.

References DeinitSocks().

Here is the call graph for this function:

◆ BmnDataReceiver() [2/2]

BmnDataReceiver::BmnDataReceiver ( )

◆ ~BmnDataReceiver() [2/2]

virtual BmnDataReceiver::~BmnDataReceiver ( )
virtual

Member Function Documentation

◆ Connect() [1/2]

int BmnDataReceiver::Connect ( )

◆ Connect() [2/2]

Int_t BmnDataReceiver::Connect ( )

◆ ConnectRaw() [1/2]

int BmnDataReceiver::ConnectRaw ( )

Definition at line 121 of file BmnDataReceiver.cxx.

References _dataServer, _sfd, DBG, isAddr, isListening, MAX_BUF_LEN, memset(), ParsePNPMsg(), PNP_DISCOVER_IP_ADDR, PNP_DISCOVER_PORT, and RecvData().

Here is the call graph for this function:

◆ ConnectRaw() [2/2]

Int_t BmnDataReceiver::ConnectRaw ( )

◆ DeinitSocks() [1/2]

void BmnDataReceiver::DeinitSocks ( )
private

Definition at line 54 of file BmnDataReceiver.cxx.

References _ctx, _socket_data, and _socket_mcast.

Referenced by ~BmnDataReceiver().

Here is the caller graph for this function:

◆ DeinitSocks() [2/2]

void BmnDataReceiver::DeinitSocks ( )
private

◆ FreeRecvStream() [1/2]

void BmnDataReceiver::FreeRecvStream ( )

Definition at line 237 of file BmnDataReceiver.cxx.

References dataAddrInfo.

◆ FreeRecvStream() [2/2]

void BmnDataReceiver::FreeRecvStream ( )

◆ GetDataQueue() [1/2]

deque< UInt_t > * BmnDataReceiver::GetDataQueue ( )
inline

Definition at line 48 of file BmnDataReceiver.h.

References data_queue.

◆ GetDataQueue() [2/2]

deque< UInt_t > * BmnDataReceiver::GetDataQueue ( )
inline

Definition at line 48 of file BmnDataReceiver.h.

References data_queue.

◆ InitRecvStream() [1/2]

Int_t BmnDataReceiver::InitRecvStream ( )

Definition at line 183 of file BmnDataReceiver.cxx.

References _dataServer, _socket_data, DBGERR, MAX_ADDR_LEN, MAX_BUF_LEN, and memset().

Here is the call graph for this function:

◆ InitRecvStream() [2/2]

Int_t BmnDataReceiver::InitRecvStream ( )

◆ InitSocks() [1/2]

void BmnDataReceiver::InitSocks ( )
private

Definition at line 45 of file BmnDataReceiver.cxx.

References _ctx, _socket_data, _socket_mcast, ZMQ_STREAM, and ZMQ_XSUB.

Referenced by BmnDataReceiver().

Here is the caller graph for this function:

◆ InitSocks() [2/2]

void BmnDataReceiver::InitSocks ( )
private

◆ IterRecvStream() [1/2]

Int_t BmnDataReceiver::IterRecvStream ( )

Definition at line 242 of file BmnDataReceiver.cxx.

◆ IterRecvStream() [2/2]

Int_t BmnDataReceiver::IterRecvStream ( )

◆ ParsePNPMsg() [1/2]

int BmnDataReceiver::ParsePNPMsg ( char * msgStr,
serverInfo * sInfo )
staticprivate

◆ ParsePNPMsg() [2/2]

Int_t BmnDataReceiver::ParsePNPMsg ( char * msgStr,
serverInfo * sInfo )
staticprivate

References BmnDataReceiver().

Here is the call graph for this function:

◆ RecvData() [1/2]

Int_t BmnDataReceiver::RecvData ( )

Definition at line 295 of file BmnDataReceiver.cxx.

References _dataServer, _socket_data, data_queue, dataAddrInfo, DBGERR, isListening, MAX_ADDR_LEN, MAX_BUF_LEN, memset(), and MSG_TIMEOUT.

Referenced by ConnectRaw().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RecvData() [2/2]

Int_t BmnDataReceiver::RecvData ( )

◆ SendHello() [1/2]

int BmnDataReceiver::SendHello ( )

Definition at line 444 of file BmnDataReceiver.cxx.

References _ctx, i, INPUT_IFACE, PNP_DISCOVER_IP_ADDR, and PNP_DISCOVER_PORT.

◆ SendHello() [2/2]

Int_t BmnDataReceiver::SendHello ( )

◆ SetDataQueue() [1/2]

void BmnDataReceiver::SetDataQueue ( deque< UInt_t > v)
inline

Definition at line 46 of file BmnDataReceiver.h.

References data_queue, and v.

◆ SetDataQueue() [2/2]

void BmnDataReceiver::SetDataQueue ( deque< UInt_t > v)
inline

Definition at line 46 of file BmnDataReceiver.h.

References data_queue, and v.

Member Data Documentation

◆ _ctx

void * BmnDataReceiver::_ctx
private

Definition at line 74 of file BmnDataReceiver.h.

Referenced by DeinitSocks(), InitSocks(), and SendHello().

◆ _dataServer

struct serverInfo BmnDataReceiver::_dataServer
private

Definition at line 78 of file BmnDataReceiver.h.

Referenced by ConnectRaw(), InitRecvStream(), and RecvData().

◆ _sfd

Int_t BmnDataReceiver::_sfd
private

Definition at line 77 of file BmnDataReceiver.h.

Referenced by ConnectRaw().

◆ _socket_data

void * BmnDataReceiver::_socket_data
private

Definition at line 76 of file BmnDataReceiver.h.

Referenced by DeinitSocks(), InitRecvStream(), InitSocks(), and RecvData().

◆ _socket_mcast

void * BmnDataReceiver::_socket_mcast
private

Definition at line 75 of file BmnDataReceiver.h.

Referenced by Connect(), DeinitSocks(), and InitSocks().

◆ data_queue

deque< UInt_t > BmnDataReceiver::data_queue
private

Definition at line 73 of file BmnDataReceiver.h.

Referenced by GetDataQueue(), RecvData(), and SetDataQueue().

◆ dataAddrInfo

struct addrinfo * BmnDataReceiver::dataAddrInfo
private

Definition at line 79 of file BmnDataReceiver.h.

Referenced by FreeRecvStream(), and RecvData().

◆ isAddr

Bool_t BmnDataReceiver::isAddr = kFALSE
private

Definition at line 81 of file BmnDataReceiver.h.

Referenced by ConnectRaw().

◆ isListening

Bool_t BmnDataReceiver::isListening
private

Definition at line 80 of file BmnDataReceiver.h.

Referenced by ConnectRaw(), and RecvData().


The documentation for this class was generated from the following files: