GET library
GETProcess Class Referenceabstract

#include <GETProcess.hh>

Inheritance diagram for GETProcess:
GETFilter GETProcessSerie GETResponse GETSignalModifier GETFilterCut GETFilterRef GETFilterShift GETFilterSmooth GETResponseFct GETAutoBaseline GETBaselineCorrection GETCalibProcess GETFilterModifier GETModifierSeq GETNoise GETSampleWindow

Public Member Functions

Constructors, affectation, destructor
 GETProcess (GETObject &obj)
 
 GETProcess (u_int n=0, double dt=0.01)
 
 GETProcess (const GETProcess &proc)
 
virtual ~GETProcess ()
 
Initialization functions
virtual void SetOptions (u_int opts)
 
virtual void SetOption (u_int flags, bool b=true)
 
virtual u_int GetOptions ()
 
virtual bool GetOption (u_int flags)
 
virtual void Init (u_int n, double dt)
 
Access to class data
u_int GetDimension () const
 
double GetSamplingTime () const
 
GETSampleGetResultSamplePtr ()
 
const GETSampleGetResultSamplePtr () const
 
GETSampleGetResultSample ()
 
const GETSampleGetResultSample () const
 
Processing
virtual GETSampleProcessSample (GETChannel &channel, u_short info)=0
 
virtual GETSampleProcessSample (GETSample &sample, GETSample &result, GETChannel &channel)=0
 
ROOT related functions
 ClassDef (GETProcess, 0)
 

Protected Attributes

u_int options
 Option flags.
 
GETSample result_sample
 Internal processing result sample (processing result)
 

Private Member Functions

 GObjectV (GETProcess)
 

Detailed Description

This is a base class for samples processing objects: response functions, filters, noise generators...

The objects deriving from this base class are processes that acts on the data from a single channel.

Because each process defines (at least) one internal data sample with the dimension of the channels signal to process, the base constructors require the dimension and sampling period of the GET channels.

Constructor & Destructor Documentation

GETProcess::GETProcess ( GETObject obj)

Constructor: the dimension of the first channel of the object is used for the process definition.

Parameters
obja core object of the GET system

References GETObject::GetSampleDim(), GETObject::GetTimeStep(), and Init().

GETProcess::GETProcess ( u_int  n = 0,
double  dt = 0.01 
)

Constructor.

Parameters
nsampling size of the channels
dtsampling period (us)

References Init().

GETProcess::GETProcess ( const GETProcess proc)

Copy constructor. It sets the result sample dimension, but does not copy values.

Parameters
procobject to copy

References GetResultSample(), and Init().

GETProcess::~GETProcess ( )
virtual

Destructor.

Member Function Documentation

GETProcess::ClassDef ( GETProcess  ,
 
)

for use within ROOT.

bool GETProcess::GetOption ( u_int  flags)
inlinevirtual

Get the status of selected options for process (true if all selected options from flags argument are ON).

Parameters
flagschecked options

References options.

u_int GETProcess::GetOptions ( )
inlinevirtual

Get the options for the process.

References options.

GETSample & GETProcess::GetResultSample ( )
inline

Return the resulting noisy sample (by reference).

References result_sample.

Referenced by GETProcess(), and GETModifierSeq::SetProcess().

const GETSample & GETProcess::GetResultSample ( ) const
inline

Return the resulting noisy sample (by reference).

References result_sample.

GETSample * GETProcess::GetResultSamplePtr ( )
inline

Return the pointer to the resulting noisy sample.

References result_sample.

const GETSample * GETProcess::GetResultSamplePtr ( ) const
inline

Return the pointer to the resulting noisy sample.

References result_sample.

GETProcess::GObjectV ( GETProcess  )
private

Macro from GCpp library that defines the following functions:

  • ClassName(): return the real class name of the object
  • StaticClassName(): return the used class name of the object (that may be a base class of the real object).
  • IsInstanceOf<T>(): return true if the current object is an instance of the template class name argument
  • Clone(): return an allocated copy of the object.
void GETProcess::Init ( u_int  n,
double  dt 
)
inlinevirtual

Initialization of the process data, to adapt it to sampling parameters (for internal result sample). It defines the internal sample dimension.

Parameters
nsampling size of the function
dtsampling time step

Reimplemented in GETResponseFct, GETFilterRef, GETFilterAgetGaus, GETFilterAget, GETFilterSmooth, GETFilterCut, GETFilterGaus, GETFilterShift, GETResponse, and GETFilter.

References result_sample.

Referenced by GETProcess(), GETProcessLink::InitProcess(), and GETModifierSeq::SetProcess().

virtual GETSample* GETProcess::ProcessSample ( GETChannel channel,
u_short  info 
)
pure virtual

This function process the argument channel and stores the result in the internal sample. The channel sample that is processed depends on the type of processing, and of the info argument if required. The function returns the internal result sample pointer. In case of error, the result is a NULL pointer.

Note
The channel samples are not modified, the result is stored in the process internal sample.
Parameters
channelGET system channel to be processed
infoadditional optional information (sample signal identifier)

Implemented in GETFilter, GETProcessSerie, GETResponse, and GETSignalModifier.

Referenced by GETChannel::ApplyOutputCorrection(), and GETProcessSerie::ProcessSample().

virtual GETSample* GETProcess::ProcessSample ( GETSample sample,
GETSample result,
GETChannel channel 
)
pure virtual

This function process the input sample channel and stores the result in the result sample. The channel argument is provided if processing (from derived classes) may be affected by GET core objects properties. The function returns the (argument) result sample pointer. In case of error, the result is a NULL pointer.

Note that the sample to be processed and the result sample can be the same object, in which case the initial sample is replaced by the processing result.

Note
  • The sample to be processed and the result sample can be the same object, in which case the initial sample is replaced by the processing result.
Parameters
sampleinput sample to be processed
resultsample where result should be stored
channelGET system channel (the samples should correspond to this channel)

Implemented in GETFilter, GETModifierSeq, GETProcessSerie, GETPhaseCorrection, GETResponse, GETAutoBaseline, GETFilterModifier, GETNoise, GETSampleWindow, GETCalibProcess, GETBaselineCorrection, GETSignalModifier, GETAutoBaselineHigh, and GETAutoBaselineLow.

void GETProcess::SetOption ( u_int  flags,
bool  b = true 
)
inlinevirtual

Set selected options for the process.

Parameters
flagschosen options
boptions value (on/off)

References options.

Referenced by GETFilter::SetNormalized().

void GETProcess::SetOptions ( u_int  opts)
inlinevirtual

Set all options for the process.

Parameters
optsselected options

References options.


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