Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

CdbBdbObjectProfilerUserAction Class Reference

The base class for user defined actions. More...

#include <CdbBdbObjectProfilerUserAction.hh>

List of all members.

Public Types

enum  ActionType { ACTION_PROCEED, ACTION_STOP, ACTION_ERROR }
 These values will be used to indicate the user's response. More...


Public Member Functions

 CdbBdbObjectProfilerUserAction (bool verboseMode=false, bool debugMode=false)
 The constructor.

virtual ~CdbBdbObjectProfilerUserAction ()
 The destructor.

ActionType action (const ooHandle(ooObj)&theInputH)
 Let a user to make a decision on what has to be done next.


Protected Member Functions

virtual ActionType userAction (const ooHandle(ooObj)&theInputH)
 Let a user to make a decision on what has to be done next (ACTUAL USER ACTION).


Detailed Description

The base class for user defined actions.

This base class has to implemented by users willing to control the "profiler" navigation in complex graphs.

IMPLEMENTATION NOTES:

(1) This class violates CDB API convention on the inclusion of "CdbBase/CdbCommon.hh" header file to avoid STD namespace conflicts of the kind described above.

Definition at line 22 of file CdbBdbObjectProfilerUserAction.hh.


Member Enumeration Documentation

enum CdbBdbObjectProfilerUserAction::ActionType
 

These values will be used to indicate the user's response.

Enumeration values:
ACTION_PROCEED 
ACTION_STOP 
ACTION_ERROR 

Definition at line 28 of file CdbBdbObjectProfilerUserAction.hh.


Constructor & Destructor Documentation

CdbBdbObjectProfilerUserAction::CdbBdbObjectProfilerUserAction bool    verboseMode = false,
bool    debugMode = false
 

The constructor.

Inityialize's the object's parameters.

Definition at line 13 of file CdbBdbObjectProfilerUserAction.cc.

CdbBdbObjectProfilerUserAction::~CdbBdbObjectProfilerUserAction   [virtual]
 

The destructor.

Moe details...

Definition at line 19 of file CdbBdbObjectProfilerUserAction.cc.


Member Function Documentation

CdbBdbObjectProfilerUserAction::ActionType CdbBdbObjectProfilerUserAction::action const ooHandle(ooObj)&    theInputH
 

Let a user to make a decision on what has to be done next.

This wrapper method takes the "about-to-be-profiled" link on the input. Ths link is evaluated by the method to report what's the next action should be.

The second parameter passed town to the operation is the current context description in which the link has to be evaluated.

Here is the explanation of possible responses:

ACTION_PROCEED : a caller has to proceed and profile this node.

ACTION_STOP : a caller should stop and not to propagate along this link.

ACTION_ERROR : an error has happened inside the method. Normally the caller should stop profiling any further links.

HOW IT WORKS:

  • first of all this method will verify if the passed object is valid and return the ACTION_ERROR value if it's not.

  • if the passed object is valid then a user defined "userAction" application's object will be called to let a user to proceed with his/her actions in the passed object's context.

See also:
CdbBdbObjectProfilerUserAction::userAction()

class CdbBdbObjectProfilerContext

Definition at line 23 of file CdbBdbObjectProfilerUserAction.cc.

References ACTION_ERROR, and userAction().

CdbBdbObjectProfilerUserAction::ActionType CdbBdbObjectProfilerUserAction::userAction const ooHandle(ooObj)&    theInputH [protected, virtual]
 

Let a user to make a decision on what has to be done next (ACTUAL USER ACTION).

This method gets called only for valid objects.

IMPLEMENTATION NOTE: In its default implementation this method would always return ACTION_PROCEED. This behaviour can be overriten by specific subclasses.

See also:
CdbBdbObjectProfilerUserAction::action()

class CdbBdbObjectProfilerContext

Definition at line 35 of file CdbBdbObjectProfilerUserAction.cc.

References ACTION_PROCEED.

Referenced by action().


The documentation for this class was generated from the following files:
Generated on Mon Dec 5 18:22:18 2005 for CDB by doxygen1.3-rc3