ATLAS Offline Software
Loading...
Searching...
No Matches
PackedContainerConverter.cxx File Reference

Allow converting std::vector to SG::PackedContainer. More...

#include "DataModelAthenaPool/PackedContainerConverter.h"
#include "AthContainers/PackedContainer.h"
#include "RootConversions/TConverterRegistry.h"
#include "TMemberStreamer.h"
#include "TClass.h"
#include "TROOT.h"
#include <vector>
#include <string>
#include <cassert>
Include dependency graph for PackedContainerConverter.cxx:

Go to the source code of this file.

Classes

class  DataModelAthenaPool::PackedContainerConverter< T, U, ALLOC >
 Converter from std::vector<T,ALLOC> to SG::PackedContainer<U,ALLOC>. More...

Namespaces

namespace  DataModelAthenaPool

Macros

#define CONVERTER(SRC, DST)
#define CONVERTER1(T)
#define CONVERTER2(T, ALLOC)

Functions

template<class T, class ALLOC>
void DataModelAthenaPool::vectorMove (std::vector< T, ALLOC > &src, std::vector< T, ALLOC > &dst)
 Move from one vector to another.
template<class T, class U, class ALLOC>
void DataModelAthenaPool::vectorMove (std::vector< T, ALLOC > &src, std::vector< U, ALLOC > &dst)
void DataModelAthenaPool::installPackedContainerConverters ()
 Install converters for supported instantiations.

Detailed Description

Allow converting std::vector to SG::PackedContainer.

Author
scott snyder snyde.nosp@m.r@bn.nosp@m.l.gov
Date
Dec, 2014

Definition in file PackedContainerConverter.cxx.

Macro Definition Documentation

◆ CONVERTER

#define CONVERTER ( SRC,
DST )
Value:
do { \
TConverterRegistry::Instance()->AddStreamerConverter \
("vector<" #SRC ">", \
"SG::PackedContainer<" #DST ",allocator<" #DST "> >", \
new PackedContainerConverter<SRC, DST> ( #SRC)); \
} while (0)

◆ CONVERTER1

#define CONVERTER1 ( T)
Value:
#define CONVERTER(SRC, DST)

◆ CONVERTER2

#define CONVERTER2 ( T,
ALLOC )
Value:
do { \
TConverterRegistry::Instance()->AddStreamerConverter \
("vector<" #T "," #ALLOC "<" #T "> >", \
"SG::PackedContainer<" #T "," #ALLOC "<" #T "> >", \
new PackedContainerConverter<T, T, ALLOC<T> > ( #T, #ALLOC "<" #T ">" )); \
} while (0)