ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigDataAccess
TrigSerializeTP
TrigSerializeTP
TrigSerTPTool.h
Go to the documentation of this file.
1
// -*- C++ -*-
2
3
/*
4
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
5
*/
6
7
#ifndef TRIGSERIALIZETP_TRIGSERTPTOOL_H
8
#define TRIGSERIALIZETP_TRIGSERTPTOOL_H 1
9
10
// System include(s):
11
#include <string>
12
#include <map>
13
14
// Gaudi/Athena include(s):
15
#include "GaudiKernel/ServiceHandle.h"
16
#include "
AthenaKernel/IDictLoaderSvc.h
"
17
#include "
AthenaKernel/ITPCnvSvc.h
"
18
#include "
AthenaBaseComps/AthAlgTool.h
"
19
#include "
CxxUtils/checker_macros.h
"
20
#include "
CxxUtils/ClassName.h
"
21
27
class
TrigSerTPTool
:
public
AthAlgTool
{
28
29
public
:
31
static
const
InterfaceID&
interfaceID
( ) {
32
static
const
InterfaceID
33
IID_TrigSerTPTool(
"TrigSerTPTool"
, 1, 0);
34
return
IID_TrigSerTPTool;
35
}
36
38
TrigSerTPTool
(
const
std::string&
type
,
const
std::string& name,
39
const
IInterface* parent );
40
42
virtual
StatusCode
initialize
()
override
;
43
45
void
*
convertTP
(
const
std::string& transName,
void
* trans,
46
std::string& persName )
const
;
48
void
*
convertPT
(
const
std::string& persName,
void
* pers,
49
std::string& transName )
const
;
50
52
const
std::string&
persClassName
(
const
std::string& transClassName )
const
;
53
54
private
:
56
TClass*
getClass
(
const
std::string& clname )
const
;
57
CxxUtils::ClassName::Rules
m_clNameRules
;
58
59
std::map< std::string, std::string >
m_TPmap
;
//configure - lookup of
60
ServiceHandle< IDictLoaderSvc >
m_dictSvc
;
61
bool
m_useAthDictLoader
;
62
ServiceHandle< ITPCnvSvc >
m_tpcnvsvc
;
63
mutable
std::mutex
m_convertersCacheMutex
;
64
mutable
std::map<std::string, ITPCnvBase*> m_convertesCache
ATLAS_THREAD_SAFE
;
65
66
ITPCnvBase
*
getConverter
(
const
std::string& persistent )
const
;
67
68
};
// class TrigSerTPTool
69
70
#endif
// !TRIGSERIALIZETP_TRIGSERTPTOOL_H
AthAlgTool.h
ClassName.h
Recursively separate out template arguments in a C++ class name.
IDictLoaderSvc.h
ITPCnvSvc.h
checker_macros.h
Define macros for attributes used to control the static checker.
AthAlgTool::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
ITPCnvBase
Definition
ITPCnvBase.h:24
ServiceHandle< IDictLoaderSvc >
TrigSerTPTool::persClassName
const std::string & persClassName(const std::string &transClassName) const
Get the name of the persistent class belonging to a transient one.
Definition
TrigSerTPTool.cxx:187
TrigSerTPTool::m_useAthDictLoader
bool m_useAthDictLoader
Definition
TrigSerTPTool.h:61
TrigSerTPTool::m_clNameRules
CxxUtils::ClassName::Rules m_clNameRules
Definition
TrigSerTPTool.h:57
TrigSerTPTool::interfaceID
static const InterfaceID & interfaceID()
Declare the interface provided by the tool.
Definition
TrigSerTPTool.h:31
TrigSerTPTool::m_tpcnvsvc
ServiceHandle< ITPCnvSvc > m_tpcnvsvc
Definition
TrigSerTPTool.h:62
TrigSerTPTool::m_dictSvc
ServiceHandle< IDictLoaderSvc > m_dictSvc
Definition
TrigSerTPTool.h:60
TrigSerTPTool::m_convertersCacheMutex
std::mutex m_convertersCacheMutex
Definition
TrigSerTPTool.h:63
TrigSerTPTool::convertPT
void * convertPT(const std::string &persName, void *pers, std::string &transName) const
Convert a persistent object to its transient self.
Definition
TrigSerTPTool.cxx:142
TrigSerTPTool::convertTP
void * convertTP(const std::string &transName, void *trans, std::string &persName) const
Convert a transient object to its persistent self.
Definition
TrigSerTPTool.cxx:77
TrigSerTPTool::getConverter
ITPCnvBase * getConverter(const std::string &persistent) const
Definition
TrigSerTPTool.cxx:60
TrigSerTPTool::ATLAS_THREAD_SAFE
std::map< std::string, ITPCnvBase * > m_convertesCache ATLAS_THREAD_SAFE
Definition
TrigSerTPTool.h:64
TrigSerTPTool::m_TPmap
std::map< std::string, std::string > m_TPmap
Definition
TrigSerTPTool.h:59
TrigSerTPTool::getClass
TClass * getClass(const std::string &clname) const
Get the ROOT dictionary for a type.
Definition
TrigSerTPTool.cxx:203
TrigSerTPTool::TrigSerTPTool
TrigSerTPTool(const std::string &type, const std::string &name, const IInterface *parent)
Standard AlgTool constructor.
Definition
TrigSerTPTool.cxx:19
TrigSerTPTool::initialize
virtual StatusCode initialize() override
Function initialising the tool.
Definition
TrigSerTPTool.cxx:34
type
Generated on
for ATLAS Offline Software by
1.17.0