ATLAS Offline Software
Loading...
Searching...
No Matches
AuxAccessorMacro.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef XAODTRACKING_AUXACCESSORMACRO_H
6#define XAODTRACKING_AUXACCESSORMACRO_H
7
8/*
9#define DEFINE_API(__TYPE, __GETTER, __SETTER) \
10 AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(SurfaceBackend_v1, __TYPE, __GETTER, \
11 __SETTER) \
12 __TYPE* SurfaceBackend_v1::__GETTER##Ptr() { \
13 static const SG::AuxElement::Accessor<__TYPE> acc(#__GETTER); \
14 return &(acc(*this)); \
15 } \
16 const __TYPE* SurfaceBackend_v1::__GETTER##Ptr() const { \
17 static const SG::AuxElement::ConstAccessor<__TYPE> acc(#__GETTER); \
18 return &(acc(*this)); \
19 }
20*/
21#define DEFINE_API(__CL, __TYPE, __GETTER, __SETTER) \
22 AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(__CL, __TYPE, __GETTER, \
23 __SETTER) \
24 __TYPE* __CL::__GETTER##Ptr() { \
25 static const SG::AuxElement::Accessor<__TYPE> acc(#__GETTER); \
26 return &(acc(*this)); \
27 } \
28 const __TYPE* __CL::__GETTER##Ptr() const { \
29 static const SG::AuxElement::ConstAccessor<__TYPE> acc(#__GETTER); \
30 return &(acc(*this)); \
31 }
32
33#endif // XAODTRACKING_AUXACCESSORMACRO_H