Files
FairMQ/fairmq/FairMQBenchmarkSampler.h
Mohammad Al-Turany 231c7c8f7e Zero MQ implimentation and example (Tutorial3)
git-svn-id: https://subversion.gsi.de/fairroot/fairbase/trunk@20162 0381ead4-6506-0410-b988-94b70fbc4730
2013-06-07 08:07:48 +00:00

46 lines
1.1 KiB
C++

/*
* FairMQBenchmarkSampler.h
*
* Created on: Apr 23, 2013
* Author: dklein
*/
#ifndef FAIRMQBENCHMARKSAMPLER_H_
#define FAIRMQBENCHMARKSAMPLER_H_
#include <string>
#include "FairMQDevice.h"
#include "TString.h"
/**
* Sampler to generate traffic for benchmarking.
*/
class FairMQBenchmarkSampler: public FairMQDevice
{
protected:
Int_t fEventSize;
Int_t fEventRate;
Int_t fEventCounter;
public:
enum {
InputFile = FairMQDevice::Last,
EventRate,
EventSize,
Last
};
FairMQBenchmarkSampler();
virtual ~FairMQBenchmarkSampler();
virtual void Init();
virtual void Run();
void Log(Int_t intervalInMs);
void* ResetEventCounter();
static void* callResetEventCounter(void* arg) { return ((FairMQBenchmarkSampler*)arg)->ResetEventCounter(); }
virtual void SetProperty(Int_t key, TString value, Int_t slot = 0);
virtual TString GetProperty(Int_t key, TString default_ = "", Int_t slot = 0);
virtual void SetProperty(Int_t key, Int_t value, Int_t slot = 0);
virtual Int_t GetProperty(Int_t key, Int_t default_ = 0, Int_t slot = 0);
};
#endif /* FAIRMQBENCHMARKSAMPLER_H_ */