TVDetectorPulseGenerator Class Reference

#include <TVDetectorPulseGenerator.h>

Inheritance diagram for TVDetectorPulseGenerator:
MaxTimeDiffDPGenerator PassThroughDPGenerator

List of all members.

Public Member Functions

 TVDetectorPulseGenerator (const char *name, TDPGeneratorOptions *opts)
virtual ~TVDetectorPulseGenerator ()
virtual int ProcessPulses (DetectorPulseList &output)=0
virtual bool ChecksForPileUp () const =0
void SetPulseSources (const IDs::source &fast, const IDs::source &slow)
void SetPulseLists (const AnalysedPulseList *fast, const AnalysedPulseList *slow)
void SetDebug (const bool &val=true)
bool Debug ()
TDetectorPulseMakeTDP (int fast_parent, int slow_parent) const
IDs::source GetSource () const
IDs::source GetFastSource () const
IDs::source GetSlowSource () const
void SetChannel (const IDs::channel &ch)
IDs::generator GetGeneratorID () const
const AnalysedPulseListFastPulseList () const
const AnalysedPulseListSlowPulseList () const
const AnalysedPulseListPulseList (bool getFast) const

Private Attributes

bool fDebug
IDs::source fFastSource
IDs::source fSlowSource
IDs::source fSource
const AnalysedPulseListfFastPulses
const AnalysedPulseListfSlowPulses

Detailed Description

Definition at line 10 of file TVDetectorPulseGenerator.h.


Constructor & Destructor Documentation

TVDetectorPulseGenerator::TVDetectorPulseGenerator ( const char *  name,
TDPGeneratorOptions opts 
) [inline]

Definition at line 14 of file TVDetectorPulseGenerator.h.

References fSource, IDs::source::Generator(), and modules::options::StringDescription().

00014                                                                        :
00015       fDebug(false),fFastPulses(NULL),fSlowPulses(NULL){
00016             fSource.Generator()=IDs::generator(name,opts->StringDescription());
00017       }
  virtual ~TVDetectorPulseGenerator(){}

virtual TVDetectorPulseGenerator::~TVDetectorPulseGenerator (  )  [inline, virtual]

Definition at line 18 of file TVDetectorPulseGenerator.h.

00018 {}


Member Function Documentation

virtual bool TVDetectorPulseGenerator::ChecksForPileUp (  )  const [pure virtual]
bool TVDetectorPulseGenerator::Debug (  )  [inline]

Definition at line 34 of file TVDetectorPulseGenerator.h.

References fDebug.

Referenced by MaxTimeDiffDPGenerator::ProcessPulses().

00034 {return fDebug;};

const AnalysedPulseList* TVDetectorPulseGenerator::FastPulseList (  )  const [inline]

Definition at line 53 of file TVDetectorPulseGenerator.h.

References fFastPulses.

Referenced by MaxTimeDiffDPGenerator::ProcessPulses().

00053 {return fFastPulses;}

IDs::source TVDetectorPulseGenerator::GetFastSource (  )  const [inline]

Definition at line 48 of file TVDetectorPulseGenerator.h.

References fFastSource.

Referenced by MaxTimeDiffDPGenerator::ProcessPulses().

00048 {return fFastSource;};

IDs::generator TVDetectorPulseGenerator::GetGeneratorID (  )  const [inline]

Definition at line 51 of file TVDetectorPulseGenerator.h.

References fSource, and IDs::source::Generator().

Referenced by MakeDetectorPulses::MakeGenerator().

00051 {return fSource.Generator();}

IDs::source TVDetectorPulseGenerator::GetSlowSource (  )  const [inline]

Definition at line 49 of file TVDetectorPulseGenerator.h.

References fSlowSource.

Referenced by MaxTimeDiffDPGenerator::ProcessPulses().

00049 {return fSlowSource;};

IDs::source TVDetectorPulseGenerator::GetSource (  )  const [inline]

Definition at line 47 of file TVDetectorPulseGenerator.h.

References fSource.

Referenced by MakeDetectorPulses::GetPassThruGeneratorID(), and MakeTDP().

00047 {return fSource;};

TDetectorPulse* TVDetectorPulseGenerator::MakeTDP ( int  fast_parent,
int  slow_parent 
) const [inline]

Definition at line 36 of file TVDetectorPulseGenerator.h.

References fFastPulses, fSlowPulses, and GetSource().

Referenced by PassThroughDPGenerator::ProcessPulses(), and MaxTimeDiffDPGenerator::ProcessPulses().

00036                                                                 {
00037       TDetectorPulse* pulse=NULL;
00038       const TAnalysedPulse* fast=NULL;
00039       if(fFastPulses && fast_parent>=0) fast=fFastPulses->at(fast_parent);
00040       const TAnalysedPulse* slow=NULL;
00041       if(fSlowPulses && slow_parent>=0) slow=fSlowPulses->at(slow_parent);
00042       if(fast || slow) {
00043           pulse=new TDetectorPulse(GetSource(),fast_parent,fast,slow_parent,slow);
00044       }
00045       return pulse;
00046   }

virtual int TVDetectorPulseGenerator::ProcessPulses ( DetectorPulseList output  )  [pure virtual]
const AnalysedPulseList* TVDetectorPulseGenerator::PulseList ( bool  getFast  )  const [inline]

Definition at line 55 of file TVDetectorPulseGenerator.h.

References fFastPulses, and fSlowPulses.

Referenced by PassThroughDPGenerator::ProcessPulses().

00055 {return getFast?fFastPulses:fSlowPulses;}

void TVDetectorPulseGenerator::SetChannel ( const IDs::channel ch  )  [inline]

Definition at line 50 of file TVDetectorPulseGenerator.h.

References IDs::source::Channel(), and fSource.

00050 {fSource.Channel()=ch;};

void TVDetectorPulseGenerator::SetDebug ( const bool &  val = true  )  [inline]

Definition at line 33 of file TVDetectorPulseGenerator.h.

References fDebug.

Referenced by MakeDetectorPulses::MakeGenerator().

00033 {fDebug=val;};

void TVDetectorPulseGenerator::SetPulseLists ( const AnalysedPulseList fast,
const AnalysedPulseList slow 
) [inline]

Definition at line 28 of file TVDetectorPulseGenerator.h.

References fFastPulses, and fSlowPulses.

Referenced by PassThroughDPGenerator::ProcessPulses().

00028                                                                                  {
00029       fFastPulses=fast;
00030       fSlowPulses=slow;
00031   }

void TVDetectorPulseGenerator::SetPulseSources ( const IDs::source fast,
const IDs::source slow 
) [inline]

Definition at line 24 of file TVDetectorPulseGenerator.h.

References fFastSource, and fSlowSource.

Referenced by MakeDetectorPulses::MakeGenerator().

00024                                                                     {
00025       fFastSource=fast;
00026       fSlowSource=slow;
00027   }

const AnalysedPulseList* TVDetectorPulseGenerator::SlowPulseList (  )  const [inline]

Definition at line 54 of file TVDetectorPulseGenerator.h.

References fSlowPulses.

Referenced by MaxTimeDiffDPGenerator::ProcessPulses().

00054 {return fSlowPulses;}


Member Data Documentation

Definition at line 58 of file TVDetectorPulseGenerator.h.

Referenced by Debug(), and SetDebug().

Definition at line 60 of file TVDetectorPulseGenerator.h.

Referenced by FastPulseList(), MakeTDP(), PulseList(), and SetPulseLists().

Definition at line 59 of file TVDetectorPulseGenerator.h.

Referenced by GetFastSource(), and SetPulseSources().

Definition at line 60 of file TVDetectorPulseGenerator.h.

Referenced by MakeTDP(), PulseList(), SetPulseLists(), and SlowPulseList().

Definition at line 59 of file TVDetectorPulseGenerator.h.

Referenced by GetSlowSource(), and SetPulseSources().


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

Generated on 15 Jun 2016 for AlcapDAQ by  doxygen 1.6.1