14#ifndef TRT_CONDITIONSDATA_STRAWT0CONTAINER_H
15#define TRT_CONDITIONSDATA_STRAWT0CONTAINER_H
93 static const char*
classname() {
return "TRTCond::StrawT0Container" ; }
108 for(
typename NestedContainer<LEVEL,StrawT0,StrawT0Trait>::FlatContainer::iterator
111 float t0 = oldt0packer.
unpack(sd.packedt0());
112 float t0err = oldt0errpacker.
unpack(sd.packedt0err());
113 unsigned char newpackedt0 = newt0packer.
pack(
t0) ;
114 unsigned char newpackedt0err = newt0errpacker.
pack(t0err) ;
115 sd =
StrawT0( newpackedt0, newpackedt0err ) ;
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
'Nested' template container for storing TRT conditions data.
Identifier for TRT detector elements in the conditions code.
Template class for packing data.
PackedType pack(UnpackedType x) const
Pack method.
UnpackedType unpack(PackedType val) const
Unpack method.
std::vector< std::pair< ExpandedIdentifier, const T * > > FlatContainer
const T & get(const ExpandedIdentifier &id) const
void getall(FlatContainer &entries) const
void set(const ExpandedIdentifier &id, const T &t)
Nested container class, ie a base class at level l with daugthers at level l+1.
LinearPacker< float, unsigned char > m_t0errpacker
void setPackingLimits(float t0min, float t0max, float t0errmin, float t0errmax)
change the packing limits
static const char * classname()
classname used to talk to iovservice
float getT0(const ExpandedIdentifier &id) const
access to unpacked t0
LinearPacker< float, unsigned char > m_t0packer
virtual ~StrawT0ContainerTemplate()
destructor
void setT0(float t0, float t0err)
set the top-level t0
float unpackT0Err(const StrawT0 &sd) const
float getT0Err(const ExpandedIdentifier &id) const
access to unpacked t0 error
float unpackT0(const StrawT0 &sd) const
more public methods
void unpack(const StrawT0 &sd, float &t0, float &t0err) const
public method to unpack a StrawT0 object
StrawT0ContainerTemplate()
constructor
void setT0(const ExpandedIdentifier &id, float t0, float t0err)
set t0
toplevel container for storing T0
trait class to deal with StrawT0 in NestedContainers
static void print(const StrawT0 &x)
static void initialize(StrawT0 &x)
static void copy(StrawT0 &out, const StrawT0 &in)
static bool isvalid(const StrawT0 &x)
static void erase(StrawT0 &x)
static StrawT0 initialvalue()
static bool isequal(const StrawT0 &x, const StrawT0 &y)
static size_t footprint(const StrawT0 &x)
class for t0 data for one straw