TwiceAsNice  2019-02-18
Classes | Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
Laos::WfcLoop< ImageType > Class Template Referenceabstract

#include <LaosWfcLoop.h>

Inheritance diagram for Laos::WfcLoop< ImageType >:
Inheritance graph
Collaboration diagram for Laos::WfcLoop< ImageType >:
Collaboration graph

Classes

struct  ParamSet
 
class  RingbufferImpl
 

Public Member Functions

 WfcLoop (const Nice::JointPtr &_config)
 ctor More...
 
virtual void pushState (Basda::RingbufferRegime::State _state)
 
virtual void pushImage (const ImagePtr &_image)
 
virtual void setFrameSize (const Nice::Size &)
 
virtual void setPupilMask (const Nice::SeqDynamicBitset &_mask)
 
void setReconstructionMatrix (const SeqSeqType &)
 
void setInjectionMatrix (const SeqSeqType &)
 
void setInjectionMatrixInv (const SeqSeqType &)
 
size_t switchParamSet ()
 
void switchParamSetBeforeNextFrame ()
 
void setNormalizeMethod (Nice::U16 _normMethod)
 
void setSlopeNormConst (float _normConst)
 
void enableLinearisation (bool _linearize)
 
void setLinearisation (const Nice::SeqFloat &_linVec)
 
void setSlopeOffset (const Nice::SeqFloat &_offsetVec)
 
void setDisturbance (const Nice::SeqSeqFloat &_distMat)
 
void startDisturbance (Nice::Int _startAt)
 
void setAbsolutModes (bool _abs)
 
void startLoop ()
 
Nice::U16 getNumberOfSlopes ()
 
void init ()
 
void setDM (Laos::XineticsCoreDevicePtr _dm)
 
void setPixelBias (const Nice::SeqFloat &_bias)
 
void setPixelFlat (const Nice::SeqFloat &_flat)
 
void setModeGains (const Nice::SeqFloat &_modeGians)
 
Nice::SeqFloat getModeGains ()
 
size_t getModeSize ()
 
void setSlopeGains (const Nice::SeqFloat &_slopeGains)
 
Nice::SeqFloat getSlopeGains ()
 
void resetShape ()
 
void send2DM (bool _send)
 
int toFactor (int _number, unsigned int _factor)
 
RingbufferImplPtr getRingbuffer ()
 
size_t ACTUATORS ()
 
size_t SLOPE_LENGTH ()
 
size_t MAX_MODES ()
 
 WfcLoop (const Nice::JointPtr &_config)
 
virtual void pushState (Basda::RingbufferRegime::State _state)
 
virtual void pushImage (const ImagePtr &_image)
 
virtual void setFrameSize (const Nice::Size &)
 
virtual void setPupilMask (const Nice::SeqDynamicBitset &_mask)
 
void setReconstructionMatrix (const SeqSeqType &)
 
void setInjectionMatrix (const SeqSeqType &)
 
void setInjectionMatrixInv (const SeqSeqType &)
 
size_t switchParamSet ()
 
void switchParamSetBeforeNextFrame ()
 
void setNormalizeMethod (Nice::U16 _normMethod)
 
void setSlopeNormConst (float _normConst)
 
void enableLinearisation (bool _linearize)
 
void setLinearisation (const Nice::SeqFloat &_linVec)
 
void setSlopeOffset (const Nice::SeqFloat &_offsetVec)
 
void setDisturbance (const Nice::SeqSeqFloat &_distMat)
 
void startDisturbance (Nice::Int _startAt)
 
void setAbsolutModes (bool _abs)
 
void startLoop ()
 
Nice::U16 getNumberOfSlopes ()
 
void init ()
 
void setDM (Laos::XineticsCoreDevicePtr _dm)
 
void setPixelBias (const Nice::SeqFloat &_bias)
 
void setPixelFlat (const Nice::SeqFloat &_flat)
 
void setModeGains (const Nice::SeqFloat &_modeGians)
 
Nice::SeqFloat getModeGains ()
 
size_t getModeSize ()
 
void setSlopeGains (const Nice::SeqFloat &_slopeGains)
 
Nice::SeqFloat getSlopeGains ()
 
void resetShape ()
 
void send2DM (bool _send)
 
int toFactor (int _number, unsigned int _factor)
 
RingbufferImplPtr getRingbuffer ()
 
size_t ACTUATORS ()
 
size_t SLOPE_LENGTH ()
 
size_t MAX_MODES ()
 
- Public Member Functions inherited from Basda::VinoDevice< Type, RingBufferDataType >::ImageCallback
virtual void pushImage (const RingBufferDataTypePtr &_data)=0
 
virtual void pushImage (const RingBufferDataTypePtr &_data)=0
 
virtual void pushImage (const RingBufferDataTypePtr &_data)=0
 

Public Attributes

Nice::Long m_startDistAt
 
bool m_switch
 
Nice::Long m_distFrame
 
bool m_absMode
 
Laos::FitsVector< Nice::I16m_actFlatPattern
 
size_t m_calcIdx
 
bool m_applySlopeGains
 

Protected Types

typedef std::vector< std::vector< float > > SeqSeqType
 
typedef WfcLoopData DataType
 
typedef IceUtil::Handle< DataTypeDataTypePtr
 
typedef IceUtil::Handle< RingbufferImplRingbufferImplPtr
 
typedef std::vector< std::vector< float > > SeqSeqType
 
typedef WfcLoopData DataType
 
typedef IceUtil::Handle< DataTypeDataTypePtr
 
typedef IceUtil::Handle< RingbufferImplRingbufferImplPtr
 

Protected Member Functions

virtual void calcit (ImageType *_image)=0
 
void initParamSet ()
 
void printParamBlock (ParamSet *_par)
 
virtual void calcit (ImageType *_image)=0
 
void initParamSet ()
 
void printParamBlock (ParamSet *_par)
 

Protected Attributes

ParamSetm_parms [2]
 
ParamSetm_activeParams
 
ParamSetm_passiveParams
 
Nice::JointPtr m_config
 
RingbufferImplPtr m_ringbuffer
 
DataTypePtr m_currentData
 
Nice::Mutex m_calcMutex
 
Nice::Size m_frameSize
 
Nice::SeqI16 m_dmFlat
 
Nice::SeqFloat m_actHist
 
Nice::U16 m_normalisation
 
float m_normconst
 
float m_sumOf4Pixel
 
float m_sumOfAllPixelFromPrevFrame
 
float * m_slopenorm
 
bool m_linearize
 
Nice::SeqFloat m_linLut
 
Nice::U16 m_linLutSegments
 
float * m_slopex
 
float * m_slopey
 
Nice::SeqFloat m_gainVector
 
size_t m_gainVectorSize
 
Nice::SeqDouble m_dmAcuatorVectorNow
 
size_t m_actuatorSize
 
Laos::XineticsCoreDevicePtr m_dm
 
bool m_send2DM
 
bool m_inited
 
SeqSeqType m_recMatI
 
SeqSeqType m_m2cI
 

Private Types

typedef Basda::VinoDevice< ImageType, WfcLoopData >::RingBufferDataTypePtr VinoImageTypePtr
 
typedef Basda::Ringbuffer< DataTypeRingbufferType
 
typedef IceUtil::Handle< RingbufferTypeRingbufferTypePtr
 
typedef Basda::Image< ImageType > Image
 
typedef IceUtil::Handle< ImageImagePtr
 
typedef Basda::VinoDevice< ImageType, WfcLoopData >::RingBufferDataTypePtr VinoImageTypePtr
 
typedef Basda::Ringbuffer< DataTypeRingbufferType
 
typedef IceUtil::Handle< RingbufferTypeRingbufferTypePtr
 
typedef Basda::Image< ImageType > Image
 
typedef IceUtil::Handle< ImageImagePtr
 

Private Member Functions

bool InvertMatrix (const SeqSeqType &_input, SeqSeqType &inverse)
 
SeqSeqType matrix2Seq (const boost::numeric::ublas::matrix< double > &_input)
 
bool InvertMatrix (const SeqSeqType &_input, SeqSeqType &inverse)
 
SeqSeqType matrix2Seq (const boost::numeric::ublas::matrix< double > &_input)
 

Private Attributes

Nice::Long m_lastSeqNum
 
Nice::Long m_distStartAtOffset
 

Friends

template<typename T1 >
class WfcLoopDevice
 
template<typename T1 >
class WfcLoopDevice
 

Member Typedef Documentation

◆ DataType [1/2]

template<typename ImageType = Nice::U16>
typedef WfcLoopData Laos::WfcLoop< ImageType >::DataType
protected

◆ DataType [2/2]

template<typename ImageType = Nice::U16>
typedef WfcLoopData Laos::WfcLoop< ImageType >::DataType
protected

◆ DataTypePtr [1/2]

template<typename ImageType = Nice::U16>
typedef IceUtil::Handle<DataType> Laos::WfcLoop< ImageType >::DataTypePtr
protected

◆ DataTypePtr [2/2]

template<typename ImageType = Nice::U16>
typedef IceUtil::Handle<DataType> Laos::WfcLoop< ImageType >::DataTypePtr
protected

◆ Image [1/2]

template<typename ImageType = Nice::U16>
typedef Basda::Image<ImageType> Laos::WfcLoop< ImageType >::Image
private

◆ Image [2/2]

template<typename ImageType = Nice::U16>
typedef Basda::Image<ImageType> Laos::WfcLoop< ImageType >::Image
private

◆ ImagePtr [1/2]

template<typename ImageType = Nice::U16>
typedef IceUtil::Handle<Image> Laos::WfcLoop< ImageType >::ImagePtr
private

◆ ImagePtr [2/2]

template<typename ImageType = Nice::U16>
typedef IceUtil::Handle<Image> Laos::WfcLoop< ImageType >::ImagePtr
private

◆ RingbufferImplPtr [1/2]

template<typename ImageType = Nice::U16>
typedef IceUtil::Handle<RingbufferImpl> Laos::WfcLoop< ImageType >::RingbufferImplPtr
protected

◆ RingbufferImplPtr [2/2]

template<typename ImageType = Nice::U16>
typedef IceUtil::Handle<RingbufferImpl> Laos::WfcLoop< ImageType >::RingbufferImplPtr
protected

◆ RingbufferType [1/2]

template<typename ImageType = Nice::U16>
typedef Basda::Ringbuffer<DataType> Laos::WfcLoop< ImageType >::RingbufferType
private

◆ RingbufferType [2/2]

template<typename ImageType = Nice::U16>
typedef Basda::Ringbuffer<DataType> Laos::WfcLoop< ImageType >::RingbufferType
private

◆ RingbufferTypePtr [1/2]

template<typename ImageType = Nice::U16>
typedef IceUtil::Handle<RingbufferType> Laos::WfcLoop< ImageType >::RingbufferTypePtr
private

◆ RingbufferTypePtr [2/2]

template<typename ImageType = Nice::U16>
typedef IceUtil::Handle<RingbufferType> Laos::WfcLoop< ImageType >::RingbufferTypePtr
private

◆ SeqSeqType [1/2]

template<typename ImageType = Nice::U16>
typedef std::vector< std::vector<float> > Laos::WfcLoop< ImageType >::SeqSeqType
protected

◆ SeqSeqType [2/2]

template<typename ImageType = Nice::U16>
typedef std::vector< std::vector<float> > Laos::WfcLoop< ImageType >::SeqSeqType
protected

◆ VinoImageTypePtr [1/2]

template<typename ImageType = Nice::U16>
typedef Basda::VinoDevice<ImageType, WfcLoopData>::RingBufferDataTypePtr Laos::WfcLoop< ImageType >::VinoImageTypePtr
private

◆ VinoImageTypePtr [2/2]

template<typename ImageType = Nice::U16>
typedef Basda::VinoDevice<ImageType, WfcLoopData>::RingBufferDataTypePtr Laos::WfcLoop< ImageType >::VinoImageTypePtr
private

Constructor & Destructor Documentation

◆ WfcLoop() [1/2]

template<typename ImageType >
Laos::WfcLoop< ImageType >::WfcLoop ( const Nice::JointPtr _config)

ctor


Parameters
_config

omp_set_num_threads(2);

◆ WfcLoop() [2/2]

template<typename ImageType = Nice::U16>
Laos::WfcLoop< ImageType >::WfcLoop ( const Nice::JointPtr _config)

Member Function Documentation

◆ ACTUATORS() [1/2]

template<typename ImageType = Nice::U16>
size_t Laos::WfcLoop< ImageType >::ACTUATORS ( )
inline

◆ ACTUATORS() [2/2]

template<typename ImageType = Nice::U16>
size_t Laos::WfcLoop< ImageType >::ACTUATORS ( )
inline

◆ calcit() [1/2]

template<typename ImageType = Nice::U16>
virtual void Laos::WfcLoop< ImageType >::calcit ( ImageType *  _image)
protectedpure virtual

◆ calcit() [2/2]

template<typename ImageType = Nice::U16>
virtual void Laos::WfcLoop< ImageType >::calcit ( ImageType *  _image)
protectedpure virtual

◆ enableLinearisation() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::enableLinearisation ( bool  _linearize)

Parameters
_linearize

◆ enableLinearisation() [2/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::enableLinearisation ( bool  _linearize)

◆ getModeGains() [1/2]

template<typename ImageType = Nice::U16>
Nice::SeqFloat Laos::WfcLoop< ImageType >::getModeGains ( )

◆ getModeGains() [2/2]

template<typename ImageType >
Nice::SeqFloat Laos::WfcLoop< ImageType >::getModeGains ( )

◆ getModeSize() [1/2]

template<typename ImageType = Nice::U16>
size_t Laos::WfcLoop< ImageType >::getModeSize ( )
inline

◆ getModeSize() [2/2]

template<typename ImageType = Nice::U16>
size_t Laos::WfcLoop< ImageType >::getModeSize ( )
inline

◆ getNumberOfSlopes() [1/2]

template<typename ImageType >
Nice::U16 Laos::WfcLoop< ImageType >::getNumberOfSlopes ( )

Returns

◆ getNumberOfSlopes() [2/2]

template<typename ImageType = Nice::U16>
Nice::U16 Laos::WfcLoop< ImageType >::getNumberOfSlopes ( )

◆ getRingbuffer() [1/2]

template<typename ImageType = Nice::U16>
RingbufferImplPtr Laos::WfcLoop< ImageType >::getRingbuffer ( )

◆ getRingbuffer() [2/2]

template<typename ImageType >
Laos::WfcLoop< ImageType >::RingbufferImplPtr Laos::WfcLoop< ImageType >::getRingbuffer ( )

◆ getSlopeGains() [1/2]

template<typename ImageType = Nice::U16>
Nice::SeqFloat Laos::WfcLoop< ImageType >::getSlopeGains ( )

◆ getSlopeGains() [2/2]

template<typename ImageType >
Nice::SeqFloat Laos::WfcLoop< ImageType >::getSlopeGains ( )

◆ init() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::init ( )

◆ init() [2/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::init ( )

◆ initParamSet() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::initParamSet ( )
protected

◆ initParamSet() [2/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::initParamSet ( )
protected

◆ InvertMatrix() [1/2]

template<typename ImageType = Nice::U16>
bool Laos::WfcLoop< ImageType >::InvertMatrix ( const SeqSeqType _input,
SeqSeqType inverse 
)
private

◆ InvertMatrix() [2/2]

template<typename ImageType >
bool Laos::WfcLoop< ImageType >::InvertMatrix ( const SeqSeqType _input,
SeqSeqType _inverse 
)
private

Parameters
_input
_inverse
Returns

◆ matrix2Seq() [1/2]

template<typename ImageType = Nice::U16>
SeqSeqType Laos::WfcLoop< ImageType >::matrix2Seq ( const boost::numeric::ublas::matrix< double > &  _input)
private

◆ matrix2Seq() [2/2]

template<typename ImageType >
std::vector< std::vector< float > > Laos::WfcLoop< ImageType >::matrix2Seq ( const boost::numeric::ublas::matrix< double > &  _input)
private

Parameters
_input
Returns

◆ MAX_MODES() [1/2]

template<typename ImageType = Nice::U16>
size_t Laos::WfcLoop< ImageType >::MAX_MODES ( )
inline

◆ MAX_MODES() [2/2]

template<typename ImageType = Nice::U16>
size_t Laos::WfcLoop< ImageType >::MAX_MODES ( )
inline

◆ printParamBlock() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::printParamBlock ( ParamSet _par)
protected

Parameters
_par

◆ printParamBlock() [2/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::printParamBlock ( ParamSet _par)
protected

◆ pushImage() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::pushImage ( const ImagePtr _image)
virtual

Parameters
_image

◆ pushImage() [2/2]

template<typename ImageType = Nice::U16>
virtual void Laos::WfcLoop< ImageType >::pushImage ( const ImagePtr _image)
virtual

◆ pushState() [1/2]

template<typename ImageType = Nice::U16>
virtual void Laos::WfcLoop< ImageType >::pushState ( Basda::RingbufferRegime::State  _state)
virtual

◆ pushState() [2/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::pushState ( Basda::RingbufferRegime::State  _state)
virtual

◆ resetShape() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::resetShape ( )

◆ resetShape() [2/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::resetShape ( )

◆ send2DM() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::send2DM ( bool  _send)

Parameters
_send

◆ send2DM() [2/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::send2DM ( bool  _send)

◆ setAbsolutModes() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setAbsolutModes ( bool  _abs)

Parameters
_abs

◆ setAbsolutModes() [2/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setAbsolutModes ( bool  _abs)

◆ setDisturbance() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setDisturbance ( const Nice::SeqSeqFloat _distMat)

Parameters
_distMat

◆ setDisturbance() [2/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setDisturbance ( const Nice::SeqSeqFloat _distMat)

◆ setDM() [1/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setDM ( Laos::XineticsCoreDevicePtr  _dm)

◆ setDM() [2/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setDM ( Laos::XineticsCoreDevicePtr  _dm)

Parameters
_dm

◆ setFrameSize() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setFrameSize ( const Nice::Size _frameSize)
virtual

Parameters
_frameSize

◆ setFrameSize() [2/2]

template<typename ImageType = Nice::U16>
virtual void Laos::WfcLoop< ImageType >::setFrameSize ( const Nice::Size )
virtual

◆ setInjectionMatrix() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setInjectionMatrix ( const SeqSeqType _inj)

Parameters
_inj

◆ setInjectionMatrix() [2/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setInjectionMatrix ( const SeqSeqType )

◆ setInjectionMatrixInv() [1/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setInjectionMatrixInv ( const SeqSeqType )

◆ setInjectionMatrixInv() [2/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setInjectionMatrixInv ( const SeqSeqType _inj)

Parameters
_inj

◆ setLinearisation() [1/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setLinearisation ( const Nice::SeqFloat _linVec)

◆ setLinearisation() [2/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setLinearisation ( const Nice::SeqFloat _linVec)

Parameters
_linVec

◆ setModeGains() [1/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setModeGains ( const Nice::SeqFloat _modeGians)

◆ setModeGains() [2/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setModeGains ( const Nice::SeqFloat _modeGains)

Parameters
_modeGains

◆ setNormalizeMethod() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setNormalizeMethod ( Nice::U16  _normMethod)

Parameters
_normMethod

◆ setNormalizeMethod() [2/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setNormalizeMethod ( Nice::U16  _normMethod)

◆ setPixelBias() [1/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setPixelBias ( const Nice::SeqFloat _bias)

◆ setPixelBias() [2/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setPixelBias ( const Nice::SeqFloat _bias)

Parameters
_bias

◆ setPixelFlat() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setPixelFlat ( const Nice::SeqFloat _flat)

Parameters
_flat

◆ setPixelFlat() [2/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setPixelFlat ( const Nice::SeqFloat _flat)

◆ setPupilMask() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setPupilMask ( const Nice::SeqDynamicBitset _mask)
virtual

Parameters
_mask

◆ setPupilMask() [2/2]

template<typename ImageType = Nice::U16>
virtual void Laos::WfcLoop< ImageType >::setPupilMask ( const Nice::SeqDynamicBitset _mask)
virtual

◆ setReconstructionMatrix() [1/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setReconstructionMatrix ( const SeqSeqType )

◆ setReconstructionMatrix() [2/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setReconstructionMatrix ( const SeqSeqType _rec)

Parameters
_rec

◆ setSlopeGains() [1/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setSlopeGains ( const Nice::SeqFloat _slopeGains)

◆ setSlopeGains() [2/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setSlopeGains ( const Nice::SeqFloat _slopeGains)

Parameters
_slopeGains

◆ setSlopeNormConst() [1/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setSlopeNormConst ( float  _normConst)

◆ setSlopeNormConst() [2/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setSlopeNormConst ( float  _normConst)

Parameters
_normConst

◆ setSlopeOffset() [1/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::setSlopeOffset ( const Nice::SeqFloat _offsetVec)

◆ setSlopeOffset() [2/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::setSlopeOffset ( const Nice::SeqFloat _offsetVec)

Parameters
_offsetVec

◆ SLOPE_LENGTH() [1/2]

template<typename ImageType = Nice::U16>
size_t Laos::WfcLoop< ImageType >::SLOPE_LENGTH ( )
inline

◆ SLOPE_LENGTH() [2/2]

template<typename ImageType = Nice::U16>
size_t Laos::WfcLoop< ImageType >::SLOPE_LENGTH ( )
inline

◆ startDisturbance() [1/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::startDisturbance ( Nice::Int  _startat)

Parameters
_startat

◆ startDisturbance() [2/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::startDisturbance ( Nice::Int  _startAt)

◆ startLoop() [1/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::startLoop ( )

◆ startLoop() [2/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::startLoop ( )

◆ switchParamSet() [1/2]

template<typename ImageType = Nice::U16>
size_t Laos::WfcLoop< ImageType >::switchParamSet ( )

◆ switchParamSet() [2/2]

template<typename ImageType >
size_t Laos::WfcLoop< ImageType >::switchParamSet ( )

◆ switchParamSetBeforeNextFrame() [1/2]

template<typename ImageType = Nice::U16>
void Laos::WfcLoop< ImageType >::switchParamSetBeforeNextFrame ( )

◆ switchParamSetBeforeNextFrame() [2/2]

template<typename ImageType >
void Laos::WfcLoop< ImageType >::switchParamSetBeforeNextFrame ( )

◆ toFactor() [1/2]

template<typename ImageType = Nice::U16>
int Laos::WfcLoop< ImageType >::toFactor ( int  _number,
unsigned int  _factor 
)

◆ toFactor() [2/2]

template<typename ImageType >
int Laos::WfcLoop< ImageType >::toFactor ( int  _number,
unsigned int  _factor 
)

Parameters
_factor
Returns

Friends And Related Function Documentation

◆ WfcLoopDevice [1/2]

template<typename ImageType = Nice::U16>
template<typename T1 >
friend class WfcLoopDevice
friend

◆ WfcLoopDevice [2/2]

template<typename ImageType = Nice::U16>
template<typename T1 >
class WfcLoopDevice ( )
friend

Member Data Documentation

◆ m_absMode

template<typename ImageType = Nice::U16>
bool Laos::WfcLoop< ImageType >::m_absMode

◆ m_actFlatPattern

template<typename ImageType = Nice::U16>
Laos::FitsVector< Nice::I16 > Laos::WfcLoop< ImageType >::m_actFlatPattern

◆ m_actHist

template<typename ImageType = Nice::U16>
Nice::SeqFloat Laos::WfcLoop< ImageType >::m_actHist
protected

◆ m_activeParams

template<typename ImageType = Nice::U16>
ParamSet * Laos::WfcLoop< ImageType >::m_activeParams
protected

◆ m_actuatorSize

template<typename ImageType = Nice::U16>
size_t Laos::WfcLoop< ImageType >::m_actuatorSize
protected

◆ m_applySlopeGains

template<typename ImageType = Nice::U16>
bool Laos::WfcLoop< ImageType >::m_applySlopeGains

◆ m_calcIdx

template<typename ImageType = Nice::U16>
size_t Laos::WfcLoop< ImageType >::m_calcIdx

◆ m_calcMutex

template<typename ImageType = Nice::U16>
Nice::Mutex Laos::WfcLoop< ImageType >::m_calcMutex
protected

◆ m_config

template<typename ImageType = Nice::U16>
Nice::JointPtr Laos::WfcLoop< ImageType >::m_config
protected

◆ m_currentData

template<typename ImageType = Nice::U16>
DataTypePtr Laos::WfcLoop< ImageType >::m_currentData
protected

◆ m_distFrame

template<typename ImageType = Nice::U16>
Nice::Long Laos::WfcLoop< ImageType >::m_distFrame

◆ m_distStartAtOffset

template<typename ImageType = Nice::U16>
Nice::Long Laos::WfcLoop< ImageType >::m_distStartAtOffset
private

◆ m_dm

template<typename ImageType = Nice::U16>
Laos::XineticsCoreDevicePtr Laos::WfcLoop< ImageType >::m_dm
protected

◆ m_dmAcuatorVectorNow

template<typename ImageType = Nice::U16>
Nice::SeqDouble Laos::WfcLoop< ImageType >::m_dmAcuatorVectorNow
protected

◆ m_dmFlat

template<typename ImageType = Nice::U16>
Nice::SeqI16 Laos::WfcLoop< ImageType >::m_dmFlat
protected

◆ m_frameSize

template<typename ImageType = Nice::U16>
Nice::Size Laos::WfcLoop< ImageType >::m_frameSize
protected

◆ m_gainVector

template<typename ImageType = Nice::U16>
Nice::SeqFloat Laos::WfcLoop< ImageType >::m_gainVector
protected

◆ m_gainVectorSize

template<typename ImageType = Nice::U16>
size_t Laos::WfcLoop< ImageType >::m_gainVectorSize
protected

◆ m_inited

template<typename ImageType = Nice::U16>
bool Laos::WfcLoop< ImageType >::m_inited
protected

◆ m_lastSeqNum

template<typename ImageType = Nice::U16>
Nice::Long Laos::WfcLoop< ImageType >::m_lastSeqNum
private

◆ m_linearize

template<typename ImageType = Nice::U16>
bool Laos::WfcLoop< ImageType >::m_linearize
protected

◆ m_linLut

template<typename ImageType = Nice::U16>
Nice::SeqFloat Laos::WfcLoop< ImageType >::m_linLut
protected

◆ m_linLutSegments

template<typename ImageType = Nice::U16>
Nice::U16 Laos::WfcLoop< ImageType >::m_linLutSegments
protected

◆ m_m2cI

template<typename ImageType = Nice::U16>
SeqSeqType Laos::WfcLoop< ImageType >::m_m2cI
protected

◆ m_normalisation

template<typename ImageType = Nice::U16>
Nice::U16 Laos::WfcLoop< ImageType >::m_normalisation
protected

◆ m_normconst

template<typename ImageType = Nice::U16>
float Laos::WfcLoop< ImageType >::m_normconst
protected

◆ m_parms

template<typename ImageType = Nice::U16>
ParamSet * Laos::WfcLoop< ImageType >::m_parms
protected

◆ m_passiveParams

template<typename ImageType = Nice::U16>
ParamSet * Laos::WfcLoop< ImageType >::m_passiveParams
protected

◆ m_recMatI

template<typename ImageType = Nice::U16>
SeqSeqType Laos::WfcLoop< ImageType >::m_recMatI
protected

◆ m_ringbuffer

template<typename ImageType = Nice::U16>
RingbufferImplPtr Laos::WfcLoop< ImageType >::m_ringbuffer
protected

◆ m_send2DM

template<typename ImageType = Nice::U16>
bool Laos::WfcLoop< ImageType >::m_send2DM
protected

◆ m_slopenorm

template<typename ImageType = Nice::U16>
float * Laos::WfcLoop< ImageType >::m_slopenorm
protected

◆ m_slopex

template<typename ImageType = Nice::U16>
float * Laos::WfcLoop< ImageType >::m_slopex
protected

◆ m_slopey

template<typename ImageType = Nice::U16>
float * Laos::WfcLoop< ImageType >::m_slopey
protected

◆ m_startDistAt

template<typename ImageType = Nice::U16>
Nice::Long Laos::WfcLoop< ImageType >::m_startDistAt

◆ m_sumOf4Pixel

template<typename ImageType = Nice::U16>
float Laos::WfcLoop< ImageType >::m_sumOf4Pixel
protected

◆ m_sumOfAllPixelFromPrevFrame

template<typename ImageType = Nice::U16>
float Laos::WfcLoop< ImageType >::m_sumOfAllPixelFromPrevFrame
protected

◆ m_switch

template<typename ImageType = Nice::U16>
bool Laos::WfcLoop< ImageType >::m_switch

The documentation for this class was generated from the following files: