The Gaudi Framework  v30r3 (a5ef0a68)
IPrecedenceSvc.h
Go to the documentation of this file.
1 #ifndef GAUDIHIVE_IPRECEDENCESVC_H_
2 #define GAUDIHIVE_IPRECEDENCESVC_H_
3 
5 
6 #include <string>
7 
8 class EventSlot;
9 struct Cause;
10 
11 //-----------------------------------------------------------------------------
12 
21 //-----------------------------------------------------------------------------
22 
23 class GAUDI_API IPrecedenceSvc : virtual public IInterface
24 {
25 
26 public:
29 
31  virtual StatusCode iterate( EventSlot&, const Cause& ) = 0;
32 
34  virtual StatusCode simulate( EventSlot& ) const = 0;
35 
37  virtual bool CFRulesResolved( EventSlot& ) const = 0;
38 
40  virtual uint getPriority( const std::string& ) const = 0;
41 
43  virtual bool isBlocking( const std::string& ) const = 0;
44 
46  virtual void dumpControlFlow() const = 0;
47  virtual void dumpDataFlow() const = 0;
48  virtual const std::string printState( EventSlot& ) const = 0;
49 
51  virtual void dumpPrecedenceRules( EventSlot& ) = 0;
53  virtual void dumpPrecedenceTrace( EventSlot& ) = 0;
54 };
55 
56 #endif /* GAUDIHIVE_IPRECEDENCESVC_H_ */
Abstract interface for a service that manages tasks&#39; precedence.
STL class.
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:51
#define DeclareInterfaceID(iface, major, minor)
Macro to declare the interface ID when using the new mechanism of extending and implementing interfac...
Definition: IInterface.h:13
Definition of the basic interface.
Definition: IInterface.h:277
Class representing the event slot.
Definition: EventSlot.h:10
#define GAUDI_API
Definition: Kernel.h:104