CMS 3D CMS Logo

SerializationManual.h
Go to the documentation of this file.
1 template <typename T>
2 template <class Archive>
3 void PixelDCSObject<T>::Item::serialize(Archive & ar, const unsigned int)
4 {
5  ar & BOOST_SERIALIZATION_NVP(name);
6  ar & BOOST_SERIALIZATION_NVP(value);
7 }
8 
9 namespace cond {
10 namespace serialization {
11 
12 // PixelDCSObject<T>::Item is non-deducible
13 // We need to make specializations explicit, or move
14 // Item outside PixelDCSObject as its own template.
15 template <>
16 struct access<PixelDCSObject<bool>::Item>
17 {
19  {
20  return true
21  and (equal(first.name, second.name))
22  and (equal(first.value, second.value))
23  ;
24  }
25 };
26 
27 template <>
28 struct access<PixelDCSObject<float>::Item>
29 {
31  {
32  return true
33  and (equal(first.name, second.name))
34  and (equal(first.value, second.value))
35  ;
36  }
37 };
38 
39 template <>
41 {
43  {
44  return true
45  and (equal(first.name, second.name))
46  and (equal(first.value, second.value))
47  ;
48  }
49 };
50 
51 }
52 }
53 
bool equal(const T &first, const T &second)
Definition: Equal.h:34
U second(std::pair< T, U > const &p)
static bool equal_(const PixelDCSObject< float >::Item &first, const PixelDCSObject< float >::Item &second)
Definition: value.py:1
static bool equal_(const PixelDCSObject< bool >::Item &first, const PixelDCSObject< bool >::Item &second)
static bool equal_(const PixelDCSObject< CaenChannel >::Item &first, const PixelDCSObject< CaenChannel >::Item &second)
Definition: plugin.cc:24
void serialize(Archive &ar, const unsigned int version)