ATLAS Offline Software
Loading...
Searching...
No Matches
ITrigSerializerToolBase.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ITRIGSERIALIZERTOOLBASE_H
6#define ITRIGSERIALIZERTOOLBASE_H
7
8#include "GaudiKernel/IAlgTool.h"
9#include "GaudiKernel/ClassID.h"
10#include <vector>
11#include <stdint.h>
12
13
18
20static const InterfaceID IID_ITrigSerializerToolBase("ITrigSerializerToolBase", 1 , 0);
21
22
24public:
25
30 virtual void serialize(const std::string &nameOfClass, const void* instance, std::vector<uint32_t> &v) = 0;
31
36 virtual std::vector<uint32_t> serialize(const std::string &nameOfClass, const void* instance) = 0;
37
42 virtual void* deserialize(const std::string &nameOfClass, const std::vector<uint32_t>& v) = 0;
43
49 virtual StatusCode initClass(const std::string &nameOfClass) const = 0;
50
55
56 virtual void reset()=0;
57
61
64 virtual void setCLID(const uint32_t *guid) = 0;
65
68 virtual StatusCode peekCLID(const std::vector<uint32_t>& v, uint32_t *guid) const = 0;
69
73 virtual ~ITrigSerializer(){;}
74
75};
76
77
78
79
80
85
86class ITrigSerializerToolBase : virtual public ITrigSerializer, virtual public IAlgTool
87
88{
89 public:
90
91 // Retrieve interface ID
92 static const InterfaceID& interfaceID() { return IID_ITrigSerializerToolBase; }
93
94 // virtual ~ITrigSerializerToolBase() {}
95
96
97
98};
99
100#endif
101
static const InterfaceID IID_ITrigSerializerToolBase("ITrigSerializerToolBase", 1, 0)
Declaration of the interface ID ( interface id, major version, minor version)
std::map< std::string, double > instance
AlgTool interface of a serializer implementation.
static const InterfaceID & interfaceID()
virtual StatusCode initClass(const std::string &nameOfClass) const =0
initialize framework to be ready to serialize a given class method to be called to prevent delayed in...
virtual std::vector< uint32_t > serialize(const std::string &nameOfClass, const void *instance)=0
serializes an object of a class nameOfClass pointed to by instance and recursively also other objects...
virtual StatusCode peekCLID(const std::vector< uint32_t > &v, uint32_t *guid) const =0
access clid of the payload (stored in BS)
virtual void reset()=0
clean internal serializer state.
virtual void serialize(const std::string &nameOfClass, const void *instance, std::vector< uint32_t > &v)=0
serializes an object of a class nameOfClass pointed to by instance and recursively also other objects...
virtual void * deserialize(const std::string &nameOfClass, const std::vector< uint32_t > &v)=0
deserializes an object of a class nameOfClass (and recursively other objects) found in std::vector<ui...
virtual void setCLID(const uint32_t *guid)=0
access clid of the payload virtual CLID getCLID() const = 0;