The Gaudi Framework
v33r1 (b1225454)
IPrecedenceSvc.h
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2019 CERN for the benefit of the LHCb and ATLAS collaborations *
3
* *
4
* This software is distributed under the terms of the Apache version 2 licence, *
5
* copied verbatim in the file "LICENSE". *
6
* *
7
* In applying this licence, CERN does not waive the privileges and immunities *
8
* granted to it by virtue of its status as an Intergovernmental Organization *
9
* or submit itself to any jurisdiction. *
10
\***********************************************************************************/
11
#ifndef GAUDIHIVE_IPRECEDENCESVC_H_
12
#define GAUDIHIVE_IPRECEDENCESVC_H_
13
14
#include "
GaudiKernel/IInterface.h
"
15
16
#include <string>
17
18
struct
EventSlot
;
19
struct
Cause
;
20
21
//-----------------------------------------------------------------------------
22
31
//-----------------------------------------------------------------------------
32
33
class
GAUDI_API
IPrecedenceSvc
:
virtual
public
IInterface
{
34
35
public
:
37
DeclareInterfaceID
(
IPrecedenceSvc
, 1, 0 );
38
40
virtual
StatusCode
iterate(
EventSlot
&,
const
Cause
& ) = 0;
41
43
virtual
StatusCode
simulate(
EventSlot
& )
const
= 0;
44
46
virtual
bool
CFRulesResolved(
EventSlot
& )
const
= 0;
47
49
virtual
uint getPriority(
const
std::string
& )
const
= 0;
50
52
virtual
bool
isBlocking(
const
std::string
& )
const
= 0;
53
55
virtual
void
dumpControlFlow()
const
= 0;
56
virtual
void
dumpDataFlow()
const
= 0;
57
virtual
const
std::string
printState(
EventSlot
& )
const
= 0;
58
60
virtual
void
dumpPrecedenceRules(
EventSlot
& ) = 0;
62
virtual
void
dumpPrecedenceTrace(
EventSlot
& ) = 0;
63
};
64
65
#endif
/* GAUDIHIVE_IPRECEDENCESVC_H_ */
EventSlot
Class representing an event slot.
Definition:
EventSlot.h:24
IPrecedenceSvc
Abstract interface for a service that manages tasks' precedence.
Definition:
IPrecedenceSvc.h:33
std::string
STL class.
Cause
Definition:
PrecedenceRulesGraph.h:397
StatusCode
This class is used for returning status codes from appropriate routines.
Definition:
StatusCode.h:61
IInterface
Definition of the basic interface.
Definition:
IInterface.h:254
DeclareInterfaceID
#define DeclareInterfaceID(iface, major, minor)
Macro to declare the interface ID when using the new mechanism of extending and implementing interfac...
Definition:
IInterface.h:23
GAUDI_API
#define GAUDI_API
Definition:
Kernel.h:81
IInterface.h
GaudiHive
src
IPrecedenceSvc.h
Generated on Mon Mar 23 2020 15:31:01 for The Gaudi Framework by
1.8.15