FairRoot/PandaRoot
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PndMQTopix4Sampler Class Reference

#include <PndMQTopix4Sampler.h>

Inheritance diagram for PndMQTopix4Sampler:

Public Types

enum  { FileName = FairMQDevice::Last, Last }
 

Public Member Functions

 PndMQTopix4Sampler ()
 
virtual ~PndMQTopix4Sampler ()
 
virtual void SetProperty (const int key, const std::string &value)
 
virtual std::string GetProperty (const int key, const std::string &default_="")
 
virtual void SetProperty (const int key, const int value)
 
virtual int GetProperty (const int key, const int default_=0)
 
virtual void Init ()
 

Static Public Member Functions

static void CustomCleanup (void *data, void *hint)
 

Protected Member Functions

virtual void Run ()
 

Protected Attributes

std::string fFileName
 
int fFE
 
PndMvdReadInToPix4TBData fTopixDataReader
 

Detailed Description

PndMQTopix4Sampler.h

Since
2014-10-10
Author
A. Rybalchenko

Definition at line 23 of file PndMQTopix4Sampler.h.

Member Enumeration Documentation

anonymous enum
Enumerator
FileName 
Last 

Definition at line 26 of file PndMQTopix4Sampler.h.

27  {
28  FileName = FairMQDevice::Last,
29  Last
30  };

Constructor & Destructor Documentation

PndMQTopix4Sampler::PndMQTopix4Sampler ( )

Definition at line 27 of file PndMQTopix4Sampler.cxx.

28  : fFileName()
29 {
30 }
PndMQTopix4Sampler::~PndMQTopix4Sampler ( )
virtual

Definition at line 73 of file PndMQTopix4Sampler.cxx.

74 {
75 }

Member Function Documentation

void PndMQTopix4Sampler::CustomCleanup ( void *  data,
void *  hint 
)
static

Definition at line 32 of file PndMQTopix4Sampler.cxx.

Referenced by Run().

33 {
34  delete (TMrfData_8b*)object;
35 }
Base interface class for data storage and manipulation. Compatible with IO classes from MRF Suite...
virtual std::string PndMQTopix4Sampler::GetProperty ( const int  key,
const std::string &  default_ = "" 
)
virtual
int PndMQTopix4Sampler::GetProperty ( const int  key,
const int  default_ = 0 
)
virtual

Definition at line 113 of file PndMQTopix4Sampler.cxx.

114 {
115  switch (key)
116  {
117  default:
118  return FairMQDevice::GetProperty(key, default_);
119  }
120 }
void PndMQTopix4Sampler::Init ( )
virtual

Definition at line 37 of file PndMQTopix4Sampler.cxx.

References fTopixDataReader, and PndMvdReadInToPix4TBData::Init().

38 {
40 }
PndMvdReadInToPix4TBData fTopixDataReader
void PndMQTopix4Sampler::Run ( )
protectedvirtual

Definition at line 42 of file PndMQTopix4Sampler.cxx.

References CustomCleanup(), fTopixDataReader, TMrfData_8b::getNumWords(), PndMvdReadInToPix4TBData::ReadInDataFromFile(), TMrfData_8b::regdata, PndMQStatus::RUNNING, and PndMQStatus::STOP.

43 {
44  bool stop = false;
45 
46  while (CheckCurrentState(RUNNING) && stop == false)
47  {
48  //boost::this_thread::sleep(boost::posix_time::milliseconds(1000));
49 
50  TMrfData_8b* data = 0;
52 
53  unique_ptr<FairMQMessage> header(fTransportFactory->CreateMessage(sizeof(int)));
54 
55  int flag = -1;
56  if (stop == false){
57  flag = PndMQStatus::RUNNING;
58  memcpy(header->GetData(), &flag, sizeof(int));
59  unique_ptr<FairMQMessage> msg(fTransportFactory->CreateMessage(reinterpret_cast<u_int8_t*>(&data->regdata[0]),data->getNumWords(),CustomCleanup,data));
60  // LOG(INFO) << "Sending Words\"" << data->getNumWords() << "\"" << " Bits: " << data->getNumBits();
61  fChannels.at("data-out").at(0).SendPart(header);
62  fChannels.at("data-out").at(0).Send(msg);
63  }
64  else
65  {
66  flag = PndMQStatus::STOP;
67  memcpy(header->GetData(), &flag, sizeof(int));
68  fChannels.at("data-out").at(0).Send(header);
69  }
70  }
71 }
virtual Bool_t ReadInDataFromFile(TMrfData_8b *&data)
PndMvdReadInToPix4TBData fTopixDataReader
static void CustomCleanup(void *data, void *hint)
Base interface class for data storage and manipulation. Compatible with IO classes from MRF Suite...
std::vector< UChar_t > regdata
Internal storage for data structure.
const UInt_t & getNumWords() const
Retrieves the length of the register in words.
virtual void PndMQTopix4Sampler::SetProperty ( const int  key,
const std::string &  value 
)
virtual

Referenced by main().

void PndMQTopix4Sampler::SetProperty ( const int  key,
const int  value 
)
virtual

Definition at line 103 of file PndMQTopix4Sampler.cxx.

104 {
105  switch (key)
106  {
107  default:
108  FairMQDevice::SetProperty(key, value);
109  break;
110  }
111 }

Member Data Documentation

int PndMQTopix4Sampler::fFE
protected

Definition at line 45 of file PndMQTopix4Sampler.h.

std::string PndMQTopix4Sampler::fFileName
protected

Definition at line 44 of file PndMQTopix4Sampler.h.

PndMvdReadInToPix4TBData PndMQTopix4Sampler::fTopixDataReader
protected

Definition at line 46 of file PndMQTopix4Sampler.h.

Referenced by Init(), and Run().


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