Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

CReadableObject Class Reference

#include <CReadableObject.h>

Inheritance diagram for CReadableObject:

Inheritance graph
[legend]
Collaboration diagram for CReadableObject:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 CReadableObject (const string &rName, CTCLInterpreter &rInterp)
 constructor.

 ~CReadableObject ()
 Destructor...

virtual void Initialize ()=0
 Initialize the readable (pure virt.).

virtual void Prepare ()=0
 Prepare module for readout (pure virt.).

virtual void Read (DAQWordBufferPtr &rBuffer)=0
 Read to buffer.

virtual int Read (void *pBuffer)=0
 Read to memory. (pure virt).

virtual void Clear ()=0
 Clear (after read e.g.).(Pure virt).

void Link (CReadOrder *pReader)
 Link to a reader/packet.

void Unlink ()
 Unlink from reader/packet.

bool isLinked ()
 Query am I linked?

virtual string getType () const =0
 Return module type string (pure virt).

virtual void OnDelete ()

Private Member Functions

 CReadableObject (const CReadableObject &aCReadableObject)
CReadableObjectoperator= (const CReadableObject &aCReadableObject)
int operator== (const CReadableObject &aCReadableObject) const
int operator!= (const CReadableObject &aCReadableObject) const

Private Attributes

CReadOrderm_pOwner
 Pointer to our reader.


Detailed Description

CReadableObject.h This class defines a readable object. Readable objects are are objects that can be stuck into a CReadOrder object to be read out during an event.

The ReadableObjerct class:

Definition at line 340 of file CReadableObject.h.


Constructor & Destructor Documentation

CReadableObject::CReadableObject const string &  rName,
CTCLInterpreter &  rInterp
 

constructor.

Definition at line 301 of file CReadableObject.cpp.

CReadableObject::~CReadableObject  ) 
 

Destructor...

Destructor is a no-op.

Definition at line 312 of file CReadableObject.cpp.

CReadableObject::CReadableObject const CReadableObject aCReadableObject  )  [private]
 


Member Function Documentation

virtual void CReadableObject::Clear  )  [pure virtual]
 

Clear (after read e.g.).(Pure virt).

Implemented in CCAENModule, CCAENV775, CCAENV785, CCAENV792, CCAENV830Module, CReadOrder, CCAENModule, CCAENV775, CCAENV785, CCAENV792, CCAENV830Module, CDigitizerModule, and CReadOrder.

Referenced by CReadOrder::ModuleClear::operator()().

virtual string CReadableObject::getType  )  const [pure virtual]
 

Return module type string (pure virt).

Implemented in CCAENV775, CCAENV785, CCAENV792, CCAENV830Module, CReadOrder, CCAENV775, CCAENV785, CCAENV792, CCAENV830Module, and CDigitizerModule.

Referenced by CReadOrder::Lister::operator()(), and CModuleCommand::ListGatherer::operator()().

virtual void CReadableObject::Initialize  )  [pure virtual]
 

Initialize the readable (pure virt.).

Implemented in CCAENModule, CCAENV775, CCAENV785, CCAENV792, CCAENV830Module, CReadOrder, CCAENModule, CCAENV775, CCAENV785, CCAENV792, CCAENV830Module, CDigitizerModule, and CReadOrder.

Referenced by CReadOrder::ModuleInitialize::operator()().

bool CReadableObject::isLinked  ) 
 

Query am I linked?

Returns:
bool
  • true if the module has been linked to a reader.
  • false if the module is not currently linked to a reader.

Definition at line 379 of file CReadableObject.cpp.

References m_pOwner.

void CReadableObject::Link CReadOrder pReader  ) 
 

Link to a reader/packet.

Links a readable object into its read order. Read order objects contain ordered lists of modules to read.

The entire readout scheme can be though of as a hierarchy consisting of a top level readout object that is an ordered list of CDigitizerModule and CReadOrder objects. Each object is allowed to only be controlled by one ReadOrder module. This member connects a module to its read order.

Exceptions:
string A string exception describing the problem is thrown e.g. if the module is already linked.

Definition at line 338 of file CReadableObject.cpp.

References m_pOwner, and pReader().

Referenced by CReadOrder::Add().

void CReadableObject::OnDelete  )  [virtual]
 

Called prior to object deletion (destruction). If the module The object must remove itself from its reader. If it has any submodules it must unlink them from itself.

If we are still linked, we remove ourselves from our reader...

Reimplemented in CReadOrder.

Definition at line 394 of file CReadableObject.cpp.

References m_pOwner, and CReadOrder::Remove().

Referenced by CModuleCommand::Delete().

int CReadableObject::operator!= const CReadableObject aCReadableObject  )  const [private]
 

CReadableObject& CReadableObject::operator= const CReadableObject aCReadableObject  )  [private]
 

int CReadableObject::operator== const CReadableObject aCReadableObject  )  const [private]
 

virtual void CReadableObject::Prepare  )  [pure virtual]
 

Prepare module for readout (pure virt.).

Implemented in CCAENModule, CCAENV775, CCAENV785, CCAENV792, CCAENV830Module, CReadOrder, CCAENModule, CCAENV775, CCAENV785, CCAENV792, CCAENV830Module, CDigitizerModule, and CReadOrder.

Referenced by CReadOrder::ModulePrepare::operator()().

virtual int CReadableObject::Read void *  pBuffer  )  [pure virtual]
 

Read to memory. (pure virt).

Implemented in CCAENModule, CCAENV830Module, CReadOrder, CCAENModule, CCAENV830Module, CDigitizerModule, and CReadOrder.

virtual void CReadableObject::Read DAQWordBufferPtr &  rBuffer  )  [pure virtual]
 

Read to buffer.

Implemented in CCAENModule, CCAENV775, CCAENV785, CCAENV792, CCAENV830Module, CReadOrder, CCAENModule, CCAENV775, CCAENV785, CCAENV792, CCAENV830Module, CDigitizerModule, and CReadOrder.

Referenced by CReadOrder::ModuleRead::operator()(), and CReadOrder::Read().

void CReadableObject::Unlink  ) 
 

Unlink from reader/packet.

Unlinks a module from its reader (see the Link member function). It is an error to unlink a module that is not alread linked.

Exceptions:
string The function throws a descriptive error message if there is a problem.

Definition at line 359 of file CReadableObject.cpp.

References m_pOwner.


Member Data Documentation

CReadOrder* CReadableObject::m_pOwner [private]
 

Pointer to our reader.

Definition at line 346 of file CReadableObject.h.

Referenced by isLinked(), Link(), OnDelete(), and Unlink().


The documentation for this class was generated from the following files:
Generated on Fri Mar 12 13:04:36 2004 for Scripted Readout by doxygen 1.3.4