ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Control
AthenaKernel
AthenaKernel
IAthenaSerializeSvc.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 ATHENAKERNEL_IATHENASERIALIZESVC_H
6
#define ATHENAKERNEL_IATHENASERIALIZESVC_H
7
8
#include "GaudiKernel/IService.h"
9
#include "
DataModelRoot/RootType.h
"
10
11
class
Guid
;
12
13
class
IAthenaSerializeSvc
:
virtual
public
::IService {
14
public
:
15
DeclareInterfaceID
(
IAthenaSerializeSvc
, 1, 0);
16
17
virtual
void
*
serialize
(
const
void
*
object
,
const
std::string& name,
size_t
& nbytes)
const
= 0;
18
virtual
void
*
serialize
(
const
void
*
object
,
const
Guid
&
id
,
size_t
& nbytes)
const
= 0;
19
virtual
void
*
serialize
(
const
void
*
object
,
const
RootType
& cltype,
size_t
& nbytes)
const
= 0;
20
21
virtual
void
*
deserialize
(
void
* buffer,
size_t
& nbytes,
const
std::string& name)
const
= 0;
22
virtual
void
*
deserialize
(
void
* buffer,
size_t
& nbytes,
const
Guid
&
id
)
const
= 0;
23
virtual
void
*
deserialize
(
void
* buffer,
size_t
& nbytes,
const
RootType
& cltype)
const
= 0;
24
};
25
26
#endif
RootType.h
RootType
TTypeAdapter RootType
Definition
RootType.h:211
Guid
This class provides a encapsulation of a GUID/UUID/CLSID/IID data structure (128 bit number).
Definition
Guid.h:25
IAthenaSerializeSvc
Definition
IAthenaSerializeSvc.h:13
IAthenaSerializeSvc::serialize
virtual void * serialize(const void *object, const Guid &id, size_t &nbytes) const =0
IAthenaSerializeSvc::deserialize
virtual void * deserialize(void *buffer, size_t &nbytes, const std::string &name) const =0
IAthenaSerializeSvc::deserialize
virtual void * deserialize(void *buffer, size_t &nbytes, const Guid &id) const =0
IAthenaSerializeSvc::serialize
virtual void * serialize(const void *object, const std::string &name, size_t &nbytes) const =0
IAthenaSerializeSvc::DeclareInterfaceID
DeclareInterfaceID(IAthenaSerializeSvc, 1, 0)
IAthenaSerializeSvc::deserialize
virtual void * deserialize(void *buffer, size_t &nbytes, const RootType &cltype) const =0
IAthenaSerializeSvc::serialize
virtual void * serialize(const void *object, const RootType &cltype, size_t &nbytes) const =0
Generated on
for ATLAS Offline Software by
1.17.0