ndarray_details::nd_data< ElemType, NDim > Struct Template Reference
[Ndarray_details]

C++ source file code template. More...

#include <nd_data.h>

Inheritance diagram for ndarray_details::nd_data< ElemType, NDim >:

ndarray_details::nd_elem_access< ElemType, NDim > ndarray< ElemType, NDim > List of all members.

Public Types

typedef unsigned shape_t
typedef int stride_t

Public Member Functions

 nd_data ()
 Default constructor.
template<typename T>
 nd_data (const nd_data< T, NDim > &other)
nd_dataoperator= (const nd_data &other)
template<typename T>
nd_dataoperator= (const nd_data< T, NDim > &other)
boost::shared_ptr< ElemType > data_ptr () const

Public Attributes

boost::shared_ptr< ElemType > m_data
 Pointer to the data array.
shape_t m_shape [NDim]
 Array dimensions.
stride_t m_strides [NDim]
 Array strides.

Detailed Description

template<typename ElemType, unsigned NDim>
struct ndarray_details::nd_data< ElemType, NDim >

C++ source file code template.

Version:
Id
nd_data.h 5678 2013-03-10 08:11:30Z salnikov@SLAC.STANFORD.EDU
Author:
Andy Salnikov

Definition at line 49 of file nd_data.h.


Member Typedef Documentation

template<typename ElemType, unsigned NDim>
typedef unsigned ndarray_details::nd_data< ElemType, NDim >::shape_t

Reimplemented in ndarray< ElemType, NDim >, ndarray< unsigned, 1 >, ndarray< Psana::EvrData::IOChannel, 1 >, ndarray< uint32_t, 4 >, ndarray< PSCalib::CalibPars::common_mode_t, 1 >, ndarray< uint16_t, 1 >, ndarray< double, 1 >, ndarray< TDATA, NDIM >, ndarray< Psana::Acqiris::VertV1, 1 >, ndarray< AcqirisArrProducer::wform_t, 2 >, ndarray< Psana::Epics::PvConfigV1, 1 >, ndarray< psddl_hdf2psana::Epix::Asic100aConfigV1_v0, 1 >, ndarray< Psana::TimeTool::EventLogic, 1 >, ndarray< Psana::Acqiris::TdcChannel, 1 >, ndarray< psddl_hdf2psana::Epix::Asic10kConfigV1_v0, 1 >, ndarray< float, 1 >, ndarray< uint16_t, 2 >, ndarray< Psana::EvrData::OutputMapV2, 1 >, ndarray< Psana::Partition::Source, 1 >, ndarray< Psana::EvrData::EventCodeV6, 1 >, ndarray< uint8_t, 2 >, ndarray< uint16_t, 3 >, ndarray< Psana::EvrData::EventCodeV5, 1 >, ndarray< Psana::EvrData::PulseConfigV3, 1 >, ndarray< Psana::EvrData::EventCodeV4, 1 >, ndarray< Psana::Imp::Sample, 1 >, ndarray< double, 2 >, ndarray< Psana::EvrData::EventCodeV3, 1 >, ndarray< psddl_hdf2psana::CsPad::ConfigV1QuadReg_v0, 1 >, ndarray< Psana::Camera::FrameCoord, 1 >, ndarray< psddl_hdf2psana::Epix::AsicConfigV1_v0, 1 >, ndarray< psddl_hdf2psana::CsPad::ConfigV2QuadReg_v0, 1 >, ndarray< psddl_hdf2psana::CsPad::DataV2_v0_Element, 1 >, ndarray< unsigned, 2 >, ndarray< PSCalib::GeometryAccess::image_t, 2 >, ndarray< psddl_hdf2psana::PNCCD::FrameV1_v0, 1 >, ndarray< Psana::EvrData::SrcEventCode, 1 >, ndarray< Psana::Acqiris::TdcDataV1_Item, 1 >, ndarray< psddl_hdf2psana::CsPad::DataV1_v0_Element, 1 >, ndarray< psddl_hdf2psana::Acqiris::DataDescV1Elem_v0< Config >, 1 >, ndarray< Psana::Lusi::DiodeFexConfigV2, 1 >, ndarray< Psana::GenericPgp::CStream, 1 >, ndarray< Psana::Alias::SrcAlias, 1 >, ndarray< float, 2 >, ndarray< Psana::ControlData::PVControl, 1 >, ndarray< int32_t, 1 >, ndarray< Psana::EvrData::IOChannelV2, 1 >, ndarray< uint8_t, 1 >, ndarray< int16_t, 3 >, ndarray< Psana::Acqiris::TdcAuxIO, 1 >, ndarray< Psana::EvrData::FIFOEvent, 1 >, ndarray< int, 1 >, ndarray< int16_t, 2 >, ndarray< Psana::EvrData::OutputMap, 1 >, ndarray< Psana::EvrData::SequencerEntry, 1 >, ndarray< uint32_t, 1 >, ndarray< Psana::CsPad::ProtectionSystemThreshold, 1 >, ndarray< Psana::EvrData::PulseConfig, 1 >, ndarray< psddl_hdf2psana::CsPad::ConfigV3QuadReg_v0, 1 >, ndarray< uint32_t, 2 >, ndarray< Psana::ControlData::PVMonitor, 1 >, ndarray< psddl_hdf2psana::Acqiris::DataDescV1Elem_v1< Config >, 1 >, ndarray< Psana::Acqiris::TimestampV1, 1 >, ndarray< Psana::GenericPgp::CRegister, 1 >, ndarray< Psana::Lusi::DiodeFexConfigV1, 1 >, ndarray< Psana::ControlData::PVLabel, 1 >, and ndarray< uint32_t, 3 >.

Definition at line 51 of file nd_data.h.

template<typename ElemType, unsigned NDim>
typedef int ndarray_details::nd_data< ElemType, NDim >::stride_t

Reimplemented in ndarray< ElemType, NDim >, ndarray< unsigned, 1 >, ndarray< Psana::EvrData::IOChannel, 1 >, ndarray< uint32_t, 4 >, ndarray< PSCalib::CalibPars::common_mode_t, 1 >, ndarray< uint16_t, 1 >, ndarray< double, 1 >, ndarray< TDATA, NDIM >, ndarray< Psana::Acqiris::VertV1, 1 >, ndarray< AcqirisArrProducer::wform_t, 2 >, ndarray< Psana::Epics::PvConfigV1, 1 >, ndarray< psddl_hdf2psana::Epix::Asic100aConfigV1_v0, 1 >, ndarray< Psana::TimeTool::EventLogic, 1 >, ndarray< Psana::Acqiris::TdcChannel, 1 >, ndarray< psddl_hdf2psana::Epix::Asic10kConfigV1_v0, 1 >, ndarray< float, 1 >, ndarray< uint16_t, 2 >, ndarray< Psana::EvrData::OutputMapV2, 1 >, ndarray< Psana::Partition::Source, 1 >, ndarray< Psana::EvrData::EventCodeV6, 1 >, ndarray< uint8_t, 2 >, ndarray< uint16_t, 3 >, ndarray< Psana::EvrData::EventCodeV5, 1 >, ndarray< Psana::EvrData::PulseConfigV3, 1 >, ndarray< Psana::EvrData::EventCodeV4, 1 >, ndarray< Psana::Imp::Sample, 1 >, ndarray< double, 2 >, ndarray< Psana::EvrData::EventCodeV3, 1 >, ndarray< psddl_hdf2psana::CsPad::ConfigV1QuadReg_v0, 1 >, ndarray< Psana::Camera::FrameCoord, 1 >, ndarray< psddl_hdf2psana::Epix::AsicConfigV1_v0, 1 >, ndarray< psddl_hdf2psana::CsPad::ConfigV2QuadReg_v0, 1 >, ndarray< psddl_hdf2psana::CsPad::DataV2_v0_Element, 1 >, ndarray< unsigned, 2 >, ndarray< PSCalib::GeometryAccess::image_t, 2 >, ndarray< psddl_hdf2psana::PNCCD::FrameV1_v0, 1 >, ndarray< Psana::EvrData::SrcEventCode, 1 >, ndarray< Psana::Acqiris::TdcDataV1_Item, 1 >, ndarray< psddl_hdf2psana::CsPad::DataV1_v0_Element, 1 >, ndarray< psddl_hdf2psana::Acqiris::DataDescV1Elem_v0< Config >, 1 >, ndarray< Psana::Lusi::DiodeFexConfigV2, 1 >, ndarray< Psana::GenericPgp::CStream, 1 >, ndarray< Psana::Alias::SrcAlias, 1 >, ndarray< float, 2 >, ndarray< Psana::ControlData::PVControl, 1 >, ndarray< int32_t, 1 >, ndarray< Psana::EvrData::IOChannelV2, 1 >, ndarray< uint8_t, 1 >, ndarray< int16_t, 3 >, ndarray< Psana::Acqiris::TdcAuxIO, 1 >, ndarray< Psana::EvrData::FIFOEvent, 1 >, ndarray< int, 1 >, ndarray< int16_t, 2 >, ndarray< Psana::EvrData::OutputMap, 1 >, ndarray< Psana::EvrData::SequencerEntry, 1 >, ndarray< uint32_t, 1 >, ndarray< Psana::CsPad::ProtectionSystemThreshold, 1 >, ndarray< Psana::EvrData::PulseConfig, 1 >, ndarray< psddl_hdf2psana::CsPad::ConfigV3QuadReg_v0, 1 >, ndarray< uint32_t, 2 >, ndarray< Psana::ControlData::PVMonitor, 1 >, ndarray< psddl_hdf2psana::Acqiris::DataDescV1Elem_v1< Config >, 1 >, ndarray< Psana::Acqiris::TimestampV1, 1 >, ndarray< Psana::GenericPgp::CRegister, 1 >, ndarray< Psana::Lusi::DiodeFexConfigV1, 1 >, ndarray< Psana::ControlData::PVLabel, 1 >, and ndarray< uint32_t, 3 >.

Definition at line 52 of file nd_data.h.


Constructor & Destructor Documentation

template<typename ElemType, unsigned NDim>
ndarray_details::nd_data< ElemType, NDim >::nd_data (  )  [inline]

Default constructor.

Definition at line 55 of file nd_data.h.

template<typename ElemType, unsigned NDim>
template<typename T>
ndarray_details::nd_data< ElemType, NDim >::nd_data ( const nd_data< T, NDim > &  other  )  [inline]

"Copy" constructor from compatible type

Definition at line 65 of file nd_data.h.


Member Function Documentation

template<typename ElemType, unsigned NDim>
boost::shared_ptr<ElemType> ndarray_details::nd_data< ElemType, NDim >::data_ptr (  )  const [inline]

Return shared pointer to contained data.

This could be used in rare cases when it's necessary to provide access to data without loosing ownership.

Definition at line 103 of file nd_data.h.

template<typename ElemType, unsigned NDim>
template<typename T>
nd_data& ndarray_details::nd_data< ElemType, NDim >::operator= ( const nd_data< T, NDim > &  other  )  [inline]

Assignment from compatible type

Definition at line 89 of file nd_data.h.

template<typename ElemType, unsigned NDim>
nd_data& ndarray_details::nd_data< ElemType, NDim >::operator= ( const nd_data< ElemType, NDim > &  other  )  [inline]

Assignment from same type

Definition at line 75 of file nd_data.h.

Referenced by ndarray_details::nd_elem_access< ElemType, 1 >::operator=(), and ndarray_details::nd_elem_access< Psana::Lusi::DiodeFexConfigV1, NDim >::operator=().


Member Data Documentation

template<typename ElemType, unsigned NDim>
boost::shared_ptr<ElemType> ndarray_details::nd_data< ElemType, NDim >::m_data

Pointer to the data array.

Definition at line 107 of file nd_data.h.

Referenced by ndarray< uint32_t, 3 >::at(), ndarray< uint32_t, 3 >::begin(), ndarray< uint32_t, 3 >::data(), ndarray_details::nd_data< Psana::Lusi::DiodeFexConfigV1, NDim >::data_ptr(), ndarray< uint32_t, 3 >::empty(), ndarray< uint32_t, 3 >::end(), ndarray< uint32_t, 3 >::ndarray(), ndarray< uint32_t, 3 >::operator=(), ndarray_details::nd_data< Psana::Lusi::DiodeFexConfigV1, NDim >::operator=(), ndarray_details::nd_elem_access< ElemType, 1 >::operator[](), ndarray_details::nd_elem_access< Psana::Lusi::DiodeFexConfigV1, NDim >::operator[](), and ndarray< uint32_t, 3 >::swap().

template<typename ElemType, unsigned NDim>
shape_t ndarray_details::nd_data< ElemType, NDim >::m_shape[NDim]

Array dimensions.

Definition at line 108 of file nd_data.h.

Referenced by ndarray< uint32_t, 3 >::_setStrides(), ndarray_details::nd_data< Psana::Lusi::DiodeFexConfigV1, NDim >::nd_data(), ndarray< uint32_t, 3 >::ndarray(), ndarray< uint32_t, 3 >::operator=(), ndarray_details::nd_data< Psana::Lusi::DiodeFexConfigV1, NDim >::operator=(), ndarray_details::nd_elem_access< Psana::Lusi::DiodeFexConfigV1, NDim >::operator[](), ndarray< uint32_t, 3 >::reshape(), ndarray< uint32_t, 3 >::shape(), ndarray< uint32_t, 3 >::size(), and ndarray< uint32_t, 3 >::swap().

template<typename ElemType, unsigned NDim>
stride_t ndarray_details::nd_data< ElemType, NDim >::m_strides[NDim]

Array strides.

Definition at line 109 of file nd_data.h.

Referenced by ndarray< uint32_t, 3 >::_setStrides(), ndarray< uint32_t, 3 >::at(), ndarray_details::nd_data< Psana::Lusi::DiodeFexConfigV1, NDim >::nd_data(), ndarray< uint32_t, 3 >::ndarray(), ndarray< uint32_t, 3 >::operator=(), ndarray_details::nd_data< Psana::Lusi::DiodeFexConfigV1, NDim >::operator=(), ndarray_details::nd_elem_access< ElemType, 1 >::operator[](), ndarray_details::nd_elem_access< Psana::Lusi::DiodeFexConfigV1, NDim >::operator[](), ndarray< uint32_t, 3 >::strides(), and ndarray< uint32_t, 3 >::swap().


The documentation for this struct was generated from the following file:
Generated on 19 Dec 2016 for PSDMSoftware by  doxygen 1.4.7