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

CCAENV830Creator Class Reference

#include <CCAENV830Creator.h>

Inheritance diagram for CCAENV830Creator:

Inheritance graph
[legend]
Collaboration diagram for CCAENV830Creator:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 CCAENV830Creator ()
virtual ~CCAENV830Creator ()
 CCAENV830Creator (const CCAENV830Creator &rhs)
CCAENV830Creatoroperator= (const CCAENV830Creator &rhs)
int operator== (const CCAENV830Creator &rhs) const
int operator!= (const CCAENV830Creator &rhs) const
virtual CReadableObjectCreate (CTCLInterpreter &rInterp, CTCLResult &rResult, int nArgs, char **pArgs)
virtual string Help ()
 CCAENV830Creator ()
virtual ~CCAENV830Creator ()
 CCAENV830Creator (const CCAENV830Creator &rhs)
CCAENV830Creatoroperator= (const CCAENV830Creator &rhs)
int operator== (const CCAENV830Creator &rhs) const
int operator!= (const CCAENV830Creator &rhs) const
virtual CDigitizerModuleCreate (CTCLInterpreter &rInterp, CTCLResult &rResult, int nArgs, char **pArgs)
virtual string Help ()

Detailed Description

Creates a CCAENV830 readout module. This module is suitable for use in the main readout section for systems that require e.g. precise absolute timing to be read with an event. Typically, this class will be instantiated and registered with a module command creational object. e.g.
  ...
  // Make a new interpreter:

  pInterp = new CTCLInterpreter();
  Tcl_Init(pInterp->getInterpreter());

  // Create the module creation infrastructure:

  pDictionary = new CDigitizerDictionary;
  pReader     = new CReadOrder(pInterp, pDictionary);
  pCreator    = new CModuleCommand(pInterp,
				   pDictionary,
				   pReader);
  pCreator->AddCreator(new CCAENV830);
  ...
  

The creator is then used by the Module command to match the module type recognized by the CCAENV830Creator ("caenv830") to instantiate modules that can then be configured by the user through TCL scripting.

Definition at line 52 of file CCAENV830Creator.h.


Constructor & Destructor Documentation

CCAENV830Creator::CCAENV830Creator  ) 
 

Creates a creational object for CAENV830 objects.

Definition at line 14 of file CCAENV830Creator.cpp.

CCAENV830Creator::~CCAENV830Creator  )  [virtual]
 

Destructor: in this case doesn't need to do any thing.

Definition at line 21 of file CCAENV830Creator.cpp.

CCAENV830Creator::CCAENV830Creator const CCAENV830Creator rhs  ) 
 

Copy constructor just invokes base class copy constructor.

Parameters:
rhs const CCAENV830Creator& [in] The source of the copy construction.

Definition at line 29 of file CCAENV830Creator.cpp.

CCAENV830Creator::CCAENV830Creator  ) 
 

virtual CCAENV830Creator::~CCAENV830Creator  )  [virtual]
 

CCAENV830Creator::CCAENV830Creator const CCAENV830Creator rhs  ) 
 


Member Function Documentation

virtual CDigitizerModule* CCAENV830Creator::Create CTCLInterpreter &  rInterp,
CTCLResult &  rResult,
int  nArgs,
char **  pArgs
[virtual]
 

Implements CModuleCreator.

CDigitizerModule * CCAENV830Creator::Create CTCLInterpreter &  rInterp,
CTCLResult &  rResult,
int  nArgs,
char **  pArgs
[virtual]
 

Returns a new instance of the scalermodule creaetd by this creator. The mdule is new'd into being and therefore must be deleted by the ultimate user. The parameters passed in are also passed to the module's configuration function. Note that the digitizer module is really a CScalerModule*

Parameters:
rInterp CTCLInterpreter& [in] Refers to the interpreter that is exeucting the module creational command.
rResult CTCLResult& [out] Refers to the result object for the interpreter. The result object will be empty if all went ok. Otherwise it will be a string describing the reason the creation failed or did not go completly as planned.
nArgs int [in] Number of unprocessed command line options.
pArgs char** [in] List of the remaining parameters. Only the command has been eaten up. The module name is used in instantiating the module, and the type is assumed to be correct (else we wouldn't get called). Remaining parameters are considrered to be configuration parameters and are parsed by the object once created.
Returns:
CReadableObject* A pointer to the resulting module.
The configuration command will be of the form:
   module name "caenv820" ?optional-config-params?
   
.

Where:

  • name is used to refer to the module and will be the configuration command for the new moduile.
  • "caenv820" is the module type, indicating that a CAENV830/830 scaler is being created.
  • ?optional-config-params? are optional parameters used to configure the module after instantiation. These parameters are in pairs of the form keyword value and can be any set of parameters that are acceptable to name config.

Implements CModuleCreator.

Definition at line 111 of file CCAENV830Creator.cpp.

References CConfigurableObject::Configure(), and CModuleCreator::getModuleType().

virtual string CCAENV830Creator::Help  )  [virtual]
 

Implements CModuleCreator.

string CCAENV830Creator::Help  )  [virtual]
 

Function: Returns a string describing the module type and whatever else the module driver author wants to display about that module type in response to the module -help command.

Implements CModuleCreator.

Definition at line 142 of file CCAENV830Creator.cpp.

int CCAENV830Creator::operator!= const CCAENV830Creator rhs  )  const [inline]
 

Definition at line 63 of file include/CCAENV830Creator.h.

References operator==().

int CCAENV830Creator::operator!= const CCAENV830Creator rhs  )  const [inline]
 

Definition at line 64 of file CCAENV830Creator.h.

References operator==().

CCAENV830Creator& CCAENV830Creator::operator= const CCAENV830Creator rhs  ) 
 

CCAENV830Creator & CCAENV830Creator::operator= const CCAENV830Creator rhs  ) 
 

Assignment operator.. Again, this is done by the base class:

Parameters:
rhs const CCAENV830Creator& [in] right hand side of the assignment operator.
Returns:
CCAENV830Creator& reference to this after the assignment. This is done to support operator chaining.

Definition at line 43 of file CCAENV830Creator.cpp.

References CModuleCreator::operator=().

int CCAENV830Creator::operator== const CCAENV830Creator rhs  )  const
 

int CCAENV830Creator::operator== const CCAENV830Creator rhs  )  const
 

Compare for equality. Since there is no member data for this class, we rely on the base class's ideas of equality:

Parameters:
rhs const CCAENV830Creator& [in] reference to the object we are being compared with.
Returns:
int nonzero if the objects are considered identical and zero if not.

Definition at line 59 of file CCAENV830Creator.cpp.

References CModuleCreator::operator==().

Referenced by operator!=().


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