CandDeMuxDigitHandle Class Reference

#include <CandDeMuxDigitHandle.h>

Inheritance diagram for CandDeMuxDigitHandle:
CandDigitHandle CandHandle

List of all members.

Public Member Functions

 CandDeMuxDigitHandle ()
 CandDeMuxDigitHandle (const CandDeMuxDigitHandle &cddh)
 CandDeMuxDigitHandle (CandDeMuxDigit *cdd)
virtual ~CandDeMuxDigitHandle ()
virtual CandDeMuxDigitHandleDupHandle () const
Int_t GetDeMuxDigitFlagWord () const
void SetDeMuxDigitFlagBit (CandDeMuxDigit::DeMuxDigitFlag_t ddflag=CandDeMuxDigit::kXTalk)
void SetDeMuxDigitFlagWord (Int_t ddflag=CandDeMuxDigit::kXTalk)
void UnSetDeMuxDigitFlagBit (CandDeMuxDigit::DeMuxDigitFlag_t ddflag=CandDeMuxDigit::kXTalk)
virtual void Trace (const char *c="") const

Static Public Member Functions

static CandDeMuxDigitHandle DupCandFromBase (const CandDigitHandle &cdh)

Detailed Description

Definition at line 20 of file CandDeMuxDigitHandle.h.


Constructor & Destructor Documentation

CandDeMuxDigitHandle::CandDeMuxDigitHandle (  ) 

Definition at line 26 of file CandDeMuxDigitHandle.cxx.

Referenced by DupCandFromBase(), and DupHandle().

00027 {
00028 }

CandDeMuxDigitHandle::CandDeMuxDigitHandle ( const CandDeMuxDigitHandle cddh  ) 

Definition at line 31 of file CandDeMuxDigitHandle.cxx.

00032                                                                        :
00033   CandDigitHandle(cddh)
00034 {
00035 }

CandDeMuxDigitHandle::CandDeMuxDigitHandle ( CandDeMuxDigit cdd  ) 

Definition at line 38 of file CandDeMuxDigitHandle.cxx.

00038                                                               :
00039   CandDigitHandle(cdd)
00040 {
00041 }

CandDeMuxDigitHandle::~CandDeMuxDigitHandle (  )  [virtual]

Definition at line 44 of file CandDeMuxDigitHandle.cxx.

00045 {
00046 }


Member Function Documentation

CandDeMuxDigitHandle CandDeMuxDigitHandle::DupCandFromBase ( const CandDigitHandle cdh  )  [static]

Definition at line 49 of file CandDeMuxDigitHandle.cxx.

References CandBase::AddDaughterLink(), CandDeMuxDigitHandle(), CandDeMuxDigit::CreateLocalHandle(), CandHandle::GetCandBase(), and CandHandle::GetDaughterIterator().

Referenced by AlgDeMuxDigitList::RunAlg().

00051 {
00052 // Static factory method for dup'ing Candidate from its own base class.
00053 // Base copy ctor dups owned pointers, but defers copying Daughter List.
00054 // Daughter List copy is made in the derived class Dup() function.
00055 // This is because base class copy constructor hasn't yet created
00056 // fLocalHandle with a CandHandle* of the full derived type.
00057    CandDeMuxDigit *cb =
00058       new CandDeMuxDigit(*((CandDigit *) cdh.GetCandBase())); // Special
00059    cb->CreateLocalHandle();  // Initializes fLocalHandle after copy-ctor
00060    TIter iterdau = cdh.GetDaughterIterator();
00061    CandHandle *dau;
00062    while ((dau=(CandHandle *) iterdau())) cb->AddDaughterLink(*dau);
00063    return CandDeMuxDigitHandle(cb);
00064 }

CandDeMuxDigitHandle * CandDeMuxDigitHandle::DupHandle (  )  const [virtual]

Reimplemented from CandDigitHandle.

Definition at line 67 of file CandDeMuxDigitHandle.cxx.

References CandDeMuxDigitHandle().

00068 {
00069    return (new CandDeMuxDigitHandle(*this));
00070 }

Int_t CandDeMuxDigitHandle::GetDeMuxDigitFlagWord (  )  const
void CandDeMuxDigitHandle::SetDeMuxDigitFlagBit ( CandDeMuxDigit::DeMuxDigitFlag_t  ddflag = CandDeMuxDigit::kXTalk  ) 

Definition at line 79 of file CandDeMuxDigitHandle.cxx.

References CandHandle::GetCandBase(), and CandHandle::GetOwnedCandBase().

Referenced by DmxUtilities::FillPlaneArray().

00081 {
00082 
00083 // Turn indicated bit(s) on
00084    ((CandDeMuxDigit *) GetOwnedCandBase())->fDeMuxDigitFlag =
00085            ((CandDeMuxDigit *) GetCandBase())->fDeMuxDigitFlag | ddflag;
00086 }

void CandDeMuxDigitHandle::SetDeMuxDigitFlagWord ( Int_t  ddflag = CandDeMuxDigit::kXTalk  ) 

Definition at line 89 of file CandDeMuxDigitHandle.cxx.

References CandHandle::GetOwnedCandBase().

00090 {
00091 
00092 // Set whole word
00093    ((CandDeMuxDigit *) GetOwnedCandBase())->fDeMuxDigitFlag = ddflag;
00094 }

void CandDeMuxDigitHandle::Trace ( const char *  c = ""  )  const [virtual]

Reimplemented from CandDigitHandle.

Definition at line 107 of file CandDeMuxDigitHandle.cxx.

References Msg::kDebug, and MSG.

00108 {
00109   MSG("Cand", Msg::kDebug)
00110        << "**********Begin CandDeMuxDigitHandle::Trace(\"" << c << "\")"
00111        << endl
00112           << "Information from CandDeMuxDigitHandle's CandDigitHandle: "
00113           << endl;
00114   CandDigitHandle::Trace(c);
00115   MSG("Cand", Msg::kDebug)
00116          << "**********End CandDeMuxDigitHandle::Trace(\"" << c << "\")"
00117          << endl;
00118 }

void CandDeMuxDigitHandle::UnSetDeMuxDigitFlagBit ( CandDeMuxDigit::DeMuxDigitFlag_t  ddflag = CandDeMuxDigit::kXTalk  ) 

Definition at line 97 of file CandDeMuxDigitHandle.cxx.

References CandHandle::GetCandBase(), and CandHandle::GetOwnedCandBase().

00099 {
00100 
00101 // Turn indicated bit(s) off
00102      ((CandDeMuxDigit *) GetOwnedCandBase())->fDeMuxDigitFlag =
00103           ((CandDeMuxDigit *) GetCandBase())->fDeMuxDigitFlag & ~ddflag;
00104 }


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

Generated on 2 Nov 2017 for loon by  doxygen 1.6.1