#include <GiGaStackActionBase.h>
Inheritance diagram for GiGaStackActionBase:
Public Types | |
SUCCESS | |
SUCCESS | |
NO_INTERFACE | |
NO_INTERFACE | |
VERSMISMATCH | |
VERSMISMATCH | |
LAST_ERROR | |
LAST_ERROR | |
enum | Status |
enum | Status |
SUCCESS | |
SUCCESS | |
NO_INTERFACE | |
NO_INTERFACE | |
VERSMISMATCH | |
VERSMISMATCH | |
LAST_ERROR | |
LAST_ERROR | |
enum | Status |
Public Member Functions | |
virtual StatusCode | initialize () |
initialize the stack action | |
virtual StatusCode | finalize () |
finalize the stack action | |
virtual G4ClassificationOfNewTrack | ClassifyNewTrack (const G4Track *) |
From G4:. | |
virtual void | NewStage () |
From G4:. | |
virtual void | PrepareNewEvent () |
From G4:. | |
virtual StatusCode | queryInterface (const InterfaceID &riid, void **ppvInterface)=0 |
virtual StatusCode | queryInterface (const InterfaceID &riid, void **ppvInterface)=0 |
virtual unsigned long | addRef ()=0 |
virtual unsigned long | addRef ()=0 |
virtual unsigned long | release ()=0 |
virtual unsigned long | release ()=0 |
virtual const std::string & | type () const =0 |
virtual const IInterface * | parent () const =0 |
virtual StatusCode | configure ()=0 |
virtual StatusCode | start ()=0 |
virtual StatusCode | stop ()=0 |
virtual StatusCode | terminate ()=0 |
virtual StatusCode | reinitialize ()=0 |
virtual StatusCode | restart ()=0 |
virtual Gaudi::StateMachine::State | FSMState () const =0 |
virtual StatusCode | sysInitialize ()=0 |
virtual StatusCode | sysStart ()=0 |
virtual StatusCode | sysStop ()=0 |
virtual StatusCode | sysFinalize ()=0 |
virtual StatusCode | sysReinitialize ()=0 |
virtual StatusCode | sysRestart ()=0 |
virtual unsigned long | refCount () const =0 |
virtual const std::string & | name () const =0 |
virtual void | handle (const Incident &i) |
handle the incident | |
IGiGaSvc * | gigaSvc () const |
accessor to GiGa Service | |
IGiGaSetUpSvc * | setupSvc () const |
accessor to GiGa SetUp Service | |
virtual StatusCode | queryInterface (const InterfaceID &riid, void **ppvInterface)=0 |
virtual StatusCode | queryInterface (const InterfaceID &riid, void **ppvUnknown) |
virtual unsigned long | addRef ()=0 |
virtual unsigned long | addRef () |
virtual unsigned long | release ()=0 |
StatusCode | release (const IInterface *interface) const |
virtual unsigned long | release () |
virtual const std::string & | type () const |
virtual const IInterface * | parent () const |
virtual StatusCode | configure () |
virtual StatusCode | start () |
virtual StatusCode | stop () |
virtual StatusCode | terminate () |
virtual StatusCode | reinitialize () |
virtual StatusCode | restart () |
virtual Gaudi::StateMachine::State | FSMState () const |
virtual StatusCode | sysInitialize () |
virtual StatusCode | sysStart () |
virtual StatusCode | sysStop () |
virtual StatusCode | sysFinalize () |
virtual StatusCode | sysReinitialize () |
virtual StatusCode | sysRestart () |
virtual const std::string & | name () const |
INTupleSvc * | ntupleSvc () const |
INTupleSvc * | evtColSvc () const |
IDataProviderSvc * | detSvc () const |
IDataProviderSvc * | evtSvc () const |
IIncidentSvc * | incSvc () const |
IChronoStatSvc * | chronoSvc () const |
IHistogramSvc * | histoSvc () const |
IAlgContextSvc * | contextSvc () const |
DataObject * | put (IDataProviderSvc *svc, DataObject *object, const std::string &address, const bool useRootInTES=true) const |
DataObject * | put (DataObject *object, const std::string &address, const bool useRootInTES=true) const |
Gaudi::Utils::GetData< TYPE >::return_type | get (IDataProviderSvc *svc, const std::string &location, const bool useRootInTES=true) const |
Gaudi::Utils::GetData< TYPE >::return_type | get (const std::string &location, const bool useRootInTES=true) const |
TYPE * | getDet (IDataProviderSvc *svc, const std::string &location) const |
TYPE * | getDet (const std::string &location) const |
bool | exist (IDataProviderSvc *svc, const std::string &location, const bool useRootInTES=true) const |
bool | exist (const std::string &location, const bool useRootInTES=true) const |
bool | existDet (IDataProviderSvc *svc, const std::string &location) const |
bool | existDet (const std::string &location) const |
TYPE * | getOrCreate (IDataProviderSvc *svc, const std::string &location, const bool useRootInTES=true) const |
TYPE * | getOrCreate (const std::string &location, const bool useRootInTES=true) const |
TOOL * | tool (const std::string &type, const std::string &name, const IInterface *parent=0, bool create=true) const |
TOOL * | tool (const std::string &type, const IInterface *parent=0, bool create=true) const |
SERVICE * | svc (const std::string &name, const bool create=true) const |
IUpdateManagerSvc * | updMgrSvc () const |
IDataProviderSvc * | fastContainersSvc () const |
StatusCode | Error (const std::string &msg, const StatusCode st=StatusCode::FAILURE, const size_t mx=10) const |
StatusCode | Warning (const std::string &msg, const StatusCode st=StatusCode::FAILURE, const size_t mx=10) const |
StatusCode | Print (const std::string &msg, const StatusCode st=StatusCode::SUCCESS, const MSG::Level lev=MSG::INFO) const |
StatusCode | Assert (const bool ok, const std::string &message="", const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const |
StatusCode | Assert (const bool ok, const char *message, const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const |
StatusCode | Exception (const std::string &msg, const GaudiException &exc, const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const |
StatusCode | Exception (const std::string &msg, const std::exception &exc, const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const |
StatusCode | Exception (const std::string &msg="no message", const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const |
MsgStream & | msgStream (const MSG::Level level) const |
MsgStream & | always () const |
MsgStream & | fatal () const |
MsgStream & | err () const |
MsgStream & | error () const |
MsgStream & | warning () const |
MsgStream & | info () const |
MsgStream & | debug () const |
MsgStream & | verbose () const |
MsgStream & | msg () const |
const Statistics & | counters () const |
StatEntity & | counter (const std::string &tag) const |
MSG::Level | msgLevel () const |
bool | msgLevel (const MSG::Level level) const |
void | resetMsgStream () const |
bool | typePrint () const |
bool | propsPrint () const |
bool | statPrint () const |
bool | errorsPrint () const |
long | printStat (const MSG::Level level=MSG::ALWAYS) const |
long | printErrors (const MSG::Level level=MSG::ALWAYS) const |
long | printProps (const MSG::Level level=MSG::ALWAYS) const |
void | registerCondition (const std::string &condition, StatusCode(CallerClass::*mf)()=NULL) |
void | registerCondition (const std::string &condition, CondType *&condPtrDest, StatusCode(CallerClass::*mf)()=NULL) |
void | registerCondition (char *condition, StatusCode(CallerClass::*mf)()=NULL) |
void | registerCondition (TargetClass *condition, StatusCode(CallerClass::*mf)()=NULL) |
StatusCode | runUpdate () |
TransientFastContainer< T > * | getFastContainer (const std::string &location, typename TransientFastContainer< T >::size_type initial=0) |
const std::string & | context () const |
const std::string & | rootInTES () const |
double | globalTimeOffset () const |
virtual Gaudi::StateMachine::State | targetFSMState () const |
virtual StatusCode | setProperty (const Property &p) |
virtual StatusCode | setProperty (const std::string &s) |
virtual StatusCode | setProperty (const std::string &n, const std::string &v) |
StatusCode | setProperty (const std::string &name, const TYPE &value) |
virtual StatusCode | getProperty (Property *p) const |
virtual const Property & | getProperty (const std::string &name) const |
virtual StatusCode | getProperty (const std::string &n, std::string &v) const |
virtual const std::vector< Property * > & | getProperties () const |
PropertyMgr * | getPropertyMgr () |
ISvcLocator * | serviceLocator () const |
ISvcLocator * | svcLoc () const |
IMessageSvc * | msgSvc () const |
IToolSvc * | toolSvc () const |
StatusCode | setProperties () |
StatusCode | service (const std::string &name, T *&svc, bool createIf=true) const |
StatusCode | service (const std::string &type, const std::string &name, T *&svc) const |
void | declInterface (const InterfaceID &, void *) |
Property * | declareProperty (const std::string &name, T &property, const std::string &doc="none") const |
Property * | declareRemoteProperty (const std::string &name, IProperty *rsvc, const std::string &rname="") const |
IAuditorSvc * | auditorSvc () const |
IMonitorSvc * | monitorSvc () const |
void | declareInfo (const std::string &name, const T &var, const std::string &desc) const |
void | declareInfo (const std::string &name, const std::string &format, const void *var, int size, const std::string &desc) const |
Static Public Member Functions | |
static const InterfaceID & | interfaceID () |
Retrieve interface ID. | |
static const InterfaceID & | interfaceID () |
static const InterfaceID & | interfaceID () |
Public Attributes | |
SUCCESS | |
NO_INTERFACE | |
VERSMISMATCH | |
LAST_ERROR | |
Protected Types | |
typedef std::map< std::string, StatEntity > | Statistics |
typedef std::map< std::string, unsigned int > | Counter |
typedef std::vector< IAlgTool * > | AlgTools |
typedef std::pair< IInterface *, std::string > | ServiceEntry |
typedef std::vector< ServiceEntry > | Services |
Protected Member Functions | |
GiGaStackActionBase (const std::string &type, const std::string &name, const IInterface *parent) | |
standard constructor | |
virtual | ~GiGaStackActionBase () |
virtual destructor | |
virtual unsigned long | refCount () const |
StatusCode | releaseTool (const IAlgTool *tool) const |
StatusCode | releaseSvc (const IInterface *svc) const |
int | outputLevel () const |
IntegerProperty & | outputLevelProperty () |
void | initOutputLevel (Property &prop) |
Static Protected Attributes | |
static const bool | IgnoreRootInTES |
static const bool | UseRootInTES |
Private Member Functions | |
GiGaStackActionBase () | |
no default constructor! | |
GiGaStackActionBase (const GiGaStackActionBase &) | |
no copy | |
GiGaStackActionBase & | operator= (const GiGaStackActionBase &) |
no = ! |
Definition at line 26 of file GiGaStackActionBase.h.
GiGaStackActionBase::GiGaStackActionBase | ( | const std::string & | type, | |
const std::string & | name, | |||
const IInterface * | parent | |||
) | [protected] |
virtual GiGaStackActionBase::~GiGaStackActionBase | ( | ) | [protected, virtual] |
virtual destructor
GiGaStackActionBase::GiGaStackActionBase | ( | ) | [private] |
no default constructor!
GiGaStackActionBase::GiGaStackActionBase | ( | const GiGaStackActionBase & | ) | [private] |
no copy
virtual StatusCode GiGaStackActionBase::initialize | ( | ) | [virtual] |
virtual StatusCode GiGaStackActionBase::finalize | ( | ) | [virtual] |
virtual G4ClassificationOfNewTrack GiGaStackActionBase::ClassifyNewTrack | ( | const G4Track * | ) | [virtual] |
From G4:.
Reply G4ClassificationOfNewTrack determined by the newly coming G4Track.
enum G4ClassificationOfNewTrack { fUrgent, // put into the urgent stack fWaiting, // put into the waiting stack fPostpone, // postpone to the next event fKill // kill without stacking };
The parent_ID of the track indicates the origin of it. G4int parent_ID = aTrack->get_parentID();
parent_ID = 0 : primary particle parent_ID > 0 : secondary particle parent_ID < 0 : postponed from the previous event
virtual void GiGaStackActionBase::NewStage | ( | ) | [virtual] |
From G4:.
This method is called by G4StackManager when the urgentStack becomes empty and contents in the waitingStack are transtered to the urgentStack.
Note that this method is not called at the begining of each event, but "PrepareNewEvent" is called.
In case re-classification of the stacked tracks is needed, use the following method to request to G4StackManager.
stackManager->ReClassify();
All of the stacked tracks in the waitingStack will be re-classified by "ClassifyNewTrack" method.
To abort current event, use the following method. stackManager->clear();
Note that this way is valid and safe only for the case it is called from this user class. The more global way of event abortion is
G4UImanager * UImanager = G4UImanager::GetUIpointer(); UImanager->ApplyCommand("/event/abort");
virtual void GiGaStackActionBase::PrepareNewEvent | ( | ) | [virtual] |
From G4:.
This method is called by G4StackManager at the begining of each event.
Be careful that the urgentStack and the waitingStack of G4StackManager are empty at this moment, because this method is called before accepting primary particles. Also, note that the postponeStack of G4StackManager may have some postponed tracks.
GiGaStackActionBase& GiGaStackActionBase::operator= | ( | const GiGaStackActionBase & | ) | [private] |
no = !
static const InterfaceID& IGiGaStackAction::interfaceID | ( | ) | [static, inherited] |
virtual void GiGaBase::handle | ( | const Incident & | i | ) | [virtual, inherited] |
IGiGaSvc* GiGaBase::gigaSvc | ( | ) | const [inline, inherited] |
accessor to GiGa Service
Definition at line 97 of file GiGaBase.h.
00097 { 00098 if( m_gigaSvc == 0 ) { 00099 m_gigaSvc = svc<IGiGaSvc>( m_gigaName , true ); 00100 } 00101 return m_gigaSvc; 00102 };
IGiGaSetUpSvc* GiGaBase::setupSvc | ( | ) | const [inline, inherited] |
accessor to GiGa SetUp Service
Definition at line 107 of file GiGaBase.h.
00107 { 00108 if( m_setupSvc == 0 ) { 00109 if( m_setupName == m_gigaName ) { 00110 // cast to correct type 00111 m_setupSvc = dynamic_cast<IGiGaSetUpSvc*>( gigaSvc() ); 00112 } 00113 else { 00114 m_setupSvc = svc<IGiGaSetUpSvc> ( m_setupName , true ); 00115 } 00116 } 00117 return m_setupSvc; 00118 };