OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
Loading...
Searching...
No Matches
IndirectChannel< T > Class Template Reference

Access to a [b]double[/b] data member. More...

#include <IndirectChannel.h>

Inheritance diagram for IndirectChannel< T >:
Inheritance graph
Collaboration diagram for IndirectChannel< T >:
Collaboration graph

Public Member Functions

 IndirectChannel (T &object, double(T::*getF)() const, void(T::*setF)(double))
 Constructor.
 
 IndirectChannel (const IndirectChannel &)
 
virtual ~IndirectChannel ()
 
virtual IndirectChannelclone () const
 Duplicate the channel.
 
virtual bool get (double &) const
 Fetch from channel.
 
virtual bool set (double)
 Store into channel.
 
virtual bool isSettable () const
 Test if settable.
 
double operator+= (double value)
 Add and assign [b]value[/b] to channel.
 
double operator-= (double value)
 Subtract and assign [b]value[/b] to channel.
 
 operator double () const
 Read channel.
 

Private Member Functions

 IndirectChannel ()
 
const IndirectChanneloperator= (const IndirectChannel &)
 

Private Attributes

TitsObject
 
double(T::* getF )() const
 
void(T::* setF )(double)
 

Detailed Description

template<class T>
class IndirectChannel< T >

Access to a [b]double[/b] data member.

Definition at line 32 of file IndirectChannel.h.

Constructor & Destructor Documentation

◆ IndirectChannel() [1/3]

template<class T >
IndirectChannel< T >::IndirectChannel ( T object,
double(T::*)() const  getF,
void(T::*)(double)  setF 
)

Constructor.

Definition at line 78 of file IndirectChannel.h.

◆ IndirectChannel() [2/3]

template<class T >
IndirectChannel< T >::IndirectChannel ( const IndirectChannel< T > &  rhs)

Definition at line 82 of file IndirectChannel.h.

◆ ~IndirectChannel()

template<class T >
IndirectChannel< T >::~IndirectChannel ( )
virtual

Definition at line 86 of file IndirectChannel.h.

◆ IndirectChannel() [3/3]

template<class T >
IndirectChannel< T >::IndirectChannel ( )
private

Member Function Documentation

◆ clone()

template<class T >
IndirectChannel< T > * IndirectChannel< T >::clone ( ) const
virtual

Duplicate the channel.

Implements Channel.

Definition at line 89 of file IndirectChannel.h.

◆ get()

template<class T >
bool IndirectChannel< T >::get ( double &  value) const
virtual

Fetch from channel.

Implements ConstChannel.

Definition at line 94 of file IndirectChannel.h.

◆ isSettable()

template<class T >
bool IndirectChannel< T >::isSettable ( ) const
inlinevirtual

Test if settable.

Reimplemented from Channel.

Definition at line 110 of file IndirectChannel.h.

◆ operator double()

ConstChannel::operator double ( ) const
inlineinherited

Read channel.

Definition at line 43 of file ConstChannel.h.

References ConstChannel::get().

Here is the call graph for this function:

◆ operator+=()

double Channel::operator+= ( double  value)
inlineinherited

Add and assign [b]value[/b] to channel.

Definition at line 45 of file Channel.h.

References ConstChannel::get(), and Channel::set().

Here is the call graph for this function:

◆ operator-=()

double Channel::operator-= ( double  value)
inlineinherited

Subtract and assign [b]value[/b] to channel.

Definition at line 54 of file Channel.h.

References ConstChannel::get(), and Channel::set().

Here is the call graph for this function:

◆ operator=()

template<class T >
const IndirectChannel & IndirectChannel< T >::operator= ( const IndirectChannel< T > &  )
private

◆ set()

template<class T >
bool IndirectChannel< T >::set ( double  value)
virtual

Store into channel.

Implements Channel.

Definition at line 100 of file IndirectChannel.h.

Member Data Documentation

◆ getF

template<class T >
double(T::* IndirectChannel< T >::getF) () const
private

Definition at line 73 of file IndirectChannel.h.

◆ itsObject

template<class T >
T& IndirectChannel< T >::itsObject
private

Definition at line 70 of file IndirectChannel.h.

◆ setF

template<class T >
void(T::* IndirectChannel< T >::setF) (double)
private

Definition at line 74 of file IndirectChannel.h.


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