BOSS
8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Interface.h
Go to the documentation of this file.
1
// Dear emacs, this is -*- c++ -*-
2
3
/**
4
* @file Interface.h
5
* @author <a href="dosil@ifae.es">Mireia Dosil</a>
6
* $Revision: 1.1.1.1 $
7
* $Date: 2007/04/26 02:51:20 $
8
*
9
* @brief Interface definition between HLT and DF
10
*/
11
12
#ifndef EFHLT_INTERFACE_H
13
#define EFHLT_INTERFACE_H
14
15
#include "eformat/eformat.h"
16
#include <string>
17
18
/**
19
* Defines the namespace that contains definitions that are common to both
20
* Dataflow and the ATLAS High-Level Triggers software. This abstract
21
* interface disantangles both development trees.
22
*/
23
namespace
efhlt
{
24
25
/**
26
* Defines common operations for the LVEF HLT software.
27
*/
28
class
Interface
{
29
30
public
:
31
/**
32
* Virtualizes the destruction.
33
*/
34
virtual
~Interface
() {}
35
36
/**
37
* Configures the framework
38
*
39
* @param config Is the only configuration parameter passed. The
40
* actual configuration implementation has to parse it, if that is the
41
* case in order to find its own way through the framework's configuration
42
* system.
43
*/
44
virtual
bool
configure
(
const
std::string& config ) = 0;
45
46
/**
47
* Unconfigures the framework, releasing all acquired resources.
48
*/
49
virtual
bool
unconfigure
(
void
) = 0;
50
51
/**
52
* prepares the HLT framework for a run
53
*
54
* @param run_number The Run number to be used for this run.
55
*/
56
virtual
bool
prepareForRun
(
int
run_number = 0 ) = 0;
57
58
/**
59
* Process one event, taking as input a pointer to the RawEvent serialized in a contiguous
60
* memory region (feStore) and giving as output the yes/no decision and the address
61
* (sdStore) of the "local" memory region containing the serialized EF fragment
62
*/
63
virtual
bool
process
(
const
uint32_t*& feStore,
const
uint32_t*& sdStore,
64
std::string& efDecision_s, std::vector<uint32_t>& efBitPattern ) = 0;
65
};
66
67
}
// namespace efhlt
68
69
#endif
/* EFHLT_INTERFACE_H */
efhlt::Interface
Definition
Interface.h:28
efhlt::Interface::process
virtual bool process(const uint32_t *&feStore, const uint32_t *&sdStore, std::string &efDecision_s, std::vector< uint32_t > &efBitPattern)=0
efhlt::Interface::prepareForRun
virtual bool prepareForRun(int run_number=0)=0
efhlt::Interface::~Interface
virtual ~Interface()
Definition
Interface.h:34
efhlt::Interface::unconfigure
virtual bool unconfigure(void)=0
efhlt::Interface::configure
virtual bool configure(const std::string &config)=0
efhlt
Definition
Interface.h:23
8.0.0
BOSS_Source
EventFilter
OnlineJointer
efhlt
include
efhlt
Interface.h
Generated by
1.16.1