|
HOPS
HOPS class reference
|
Class MHO_AxisPack. More...
#include <MHO_AxisPack.hh>
Public Types | |
| typedef std::tuple< XAxisTypeS... > | axis_pack_tuple_type |
| typedef std::integral_constant< std::size_t, sizeof...(XAxisTypeS) > | NAXES |
Public Member Functions | |
| MHO_AxisPack () | |
| MHO_AxisPack (const MHO_AxisPack &obj) | |
| MHO_AxisPack (const std::size_t *dim) | |
| virtual | ~MHO_AxisPack () |
| virtual uint64_t | GetSerializedSize () const override |
| Getter for serialized size. More... | |
| virtual MHO_AxisPack & | operator= (const MHO_AxisPack &rhs) |
Public Member Functions inherited from hops::MHO_Serializable | |
| MHO_Serializable () | |
| MHO_Serializable (const MHO_UUID &uuid) | |
| MHO_Serializable (std::size_t n) | |
| virtual | ~MHO_Serializable () |
| MHO_UUID | GetObjectUUID () const |
| Getter for object uuid. More... | |
| virtual MHO_UUID | GetTypeUUID () const |
| Getter for type uuid. More... | |
| virtual MHO_ClassVersion | GetVersion () const |
| Getter for version. More... | |
| void | SetObjectUUID (const MHO_UUID &uuid) |
| Setter for object uuid. More... | |
Protected Member Functions | |
| template<std::size_t N = 0> | |
| std::enable_if<(N==sizeof...(XAxisTypeS)), void >::type | compute_total_size (uint64_t &) const |
| Inductively computes and adds total serialized size of tuple elements to uint64_t& (needed for streaming). More... | |
| template<std::size_t N = 0> | |
| std::enable_if<(N< sizeof...(XAxisTypeS)), void >::type | compute_total_size (uint64_t &total_size) const |
| Recursively computes and adds serialized size of Nth XAxisTypeS element to total_size. More... | |
| template<std::size_t N = 0> | |
| std::enable_if<(N==sizeof...(XAxisTypeS)), void >::type | copy (const MHO_AxisPack &) const |
| used for copying the full tuple from one axis pack to another More... | |
| template<std::size_t N = 0> | |
| std::enable_if<(N< sizeof...(XAxisTypeS)), void >::type | copy (const MHO_AxisPack &rhs) |
| Copies an axis pack recursively using template meta-programming. More... | |
| template<std::size_t N = 0> | |
| std::enable_if<(N==sizeof...(XAxisTypeS)), void >::type | resize_axis_pack (const std::size_t *) |
| inductive access to all elements of the tuple, so we can re-size them from an array More... | |
| template<std::size_t N = 0> | |
| std::enable_if<(N< sizeof...(XAxisTypeS)), void >::type | resize_axis_pack (const std::size_t *dim) |
| Resize each element of the axis pack using the dimensions specified in dim. More... | |
Friends | |
| template<typename XStream > | |
| XStream & | operator<< (XStream &s, const MHO_AxisPack &aData) |
| template<typename XStream > | |
| XStream & | operator>> (XStream &s, MHO_AxisPack &aData) |
Class MHO_AxisPack.
a packaged set of axes (XAxisTypeS are expected to inherit from MHO_Axis)
| typedef std::tuple< XAxisTypeS... > hops::MHO_AxisPack< XAxisTypeS >::axis_pack_tuple_type |
| typedef std::integral_constant< std::size_t, sizeof...(XAxisTypeS) > hops::MHO_AxisPack< XAxisTypeS >::NAXES |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
|
inlineprotected |
Inductively computes and adds total serialized size of tuple elements to uint64_t& (needed for streaming).
| N | Template parameter (size of the axis pack) |
| !total_size | Parameter description |
|
inlineprotected |
Recursively computes and adds serialized size of Nth XAxisTypeS element to total_size.
| N | Template parameter N |
| total_size | Reference to uint64_t accumulating total serialized size |
|
inlineprotected |
used for copying the full tuple from one axis pack to another
| N | Template parameter N |
| MHO_AxisPack& | Parameter description |
|
inlineprotected |
Copies an axis pack recursively using template meta-programming.
| N | Template parameter N |
| rhs | The source axis pack to copy from. |
|
inlineoverridevirtual |
Getter for serialized size.
Implements hops::MHO_Serializable.
Reimplemented in hops::MHO_TableContainer< double, MHO_AxisPack< MHO_Axis< double > > >, hops::MHO_TableContainer< visibility_element_type, mbd_dr_axis_pack >, hops::MHO_TableContainer< double, mbd_axis_pack >, hops::MHO_TableContainer< pcal_phasor_type, multitone_pcal_axis_type >, hops::MHO_TableContainer< visibility_element_type, mbd_axis_pack >, hops::MHO_TableContainer< weight_element_type, baseline_axis_pack >, hops::MHO_TableContainer< std::complex< double >, MHO_AxisPack< MHO_Axis< double > > >, hops::MHO_TableContainer< std::complex< double >, pcal_axis_pack >, and hops::MHO_TableContainer< visibility_element_type, baseline_axis_pack >.
|
inlinevirtual |
|
inlineprotected |
inductive access to all elements of the tuple, so we can re-size them from an array
| N | Template parameter (size of the axis pack) |
| !dim | Parameter description |
|
inlineprotected |
Resize each element of the axis pack using the dimensions specified in dim.
| N | Template parameter (size of the axis pack) |
| dim | Input dimension sizes for resizing. |
|
friend |
|
friend |