Diana Software
Public Member Functions | Private Member Functions | Private Attributes | List of all members
QBaseType< T > Class Template Reference

base types wrapped into a QObject. Currently implemented types are QInt QDouble and QFloat. QBool and QString are implemented elsewhere. More...

Inheritance diagram for QBaseType< T >:
QObject

Public Member Functions

void Clear ()
 clear members More...
 
 QBaseType ()
 constructor More...
 
 QBaseType (const QBaseType< T > &bt)
 copy constructor More...
 
 QBaseType (const T &value)
 copy constructor from base type More...
 
QBaseType< T > & operator= (const T &value)
 operator= to base type More...
 
bool operator== (const T &value) const
 comparison operator More...
 
bool operator!= (const T &value) const
 difference operator More...
 
bool operator< (const T &value) const
 less operator More...
 
bool operator<= (const T &value) const
 less equal operator More...
 
bool operator>= (const T &value) const
 greater equal operator More...
 
bool operator> (const T &value) const
 greater operator More...
 
QBaseType< T > & operator+= (const T &value)
 operator+= More...
 
QBaseType< T > & operator-= (const T &value)
 operator-= More...
 
QBaseType< T > & operator*= (const T &value)
 operator*= More...
 
QBaseType< T > & operator/= (const T &value)
 operator/= More...
 
 operator T () const
 cast operator More...
 
void Dump (std::ostream &ob) const
 dump value to stream More...
 
bool Fill (Diana::QObject *obj) const
 fill object of same type (like operator=) More...
 
QObjectDuplicate () const
 create object of same type More...
 
void Clear ()
 reset members to default values More...
 
void Clear ()
 reset members to default values More...
 
void Clear ()
 reset members to default values More...
 
void Clear ()
 reset members to default values More...
 
- Public Member Functions inherited from QObject
 QObject ()
 default constructor More...
 
virtual ~QObject ()
 destructor More...
 
QObjectoperator= (const QObject &rhs)
 operator= More...
 
void Validate ()
 make object valid More...
 
void InValidate ()
 make object non valid More...
 
bool IsValid () const
 check wheter object is valid More...
 
void SetWrite (bool write=true)
 write or not this object More...
 
bool GetWrite () const
 check wheter write or not this object More...
 
bool IsRequired () const
 check wheter this object is required by some module More...
 
void SetIsRequired (bool required=true)
 set that this object is required
More...
 
bool IsJustAdded () const
 check wheter this object has been just added by some module More...
 
void SetIsJustAdded (bool added=true)
 set that this object has been just added
More...
 
void Reset ()
 set object to non valid and calls Clear() More...
 
virtual bool Fill (QObject *evData) const =0
 calls operator= of inheriting classes. Validity flag and bits are not copied. This function is automatically declared/implemented in derived classes by QObjectDef/QObjectImp. If evData type mismatches returns false, true otherwise. More...
 
void FullyFill (QObject *evData) const
 calls Fill(QObject*) if this QObject IsValid(). Copies Validity flag and bits More...
 
virtual void Print () const
 print content on screen More...
 
virtual QError WriteOnStream (std::ostream &o) const
 print content to stream (intended for storage in text files) More...
 
virtual QError ReadFromStream (std::istream &o)
 fill content from stream (intended for storage in text files) More...
 
void CopyBits (QObject *obj) const
 copy validity and temporary bits to another QObject More...
 
virtual void Draw (Option_t *option="")
 

Private Member Functions

 ClassDef (QBaseType, 2)
 This is the only QObject where we do not use QObjectDef, because of templates. More...
 

Private Attributes

fValue
 the base type More...
 

Additional Inherited Members

- Public Types inherited from QObject
enum  { kIsValid = BIT(15) , kWrite = BIT(0) , kIsRequired = BIT(1) , kIsJustAdded = BIT(2) }
 TObject bits. More...
 
- Static Public Member Functions inherited from QObject
static QObjectNew (const char *object)
 

Detailed Description

template<class T>
class QBaseType< T >

base types wrapped into a QObject. Currently implemented types are QInt QDouble and QFloat. QBool and QString are implemented elsewhere.

Author
Marco Vignati
Examples
GlobalDataManagerExample.C, MTutorialAmplitudeFilter.cc, MTutorialPulseShape.cc, and ScanEvents.C.

Definition at line 17 of file QBaseType.hh.

Constructor & Destructor Documentation

◆ QBaseType() [1/3]

template<class T >
QBaseType< T >::QBaseType ( )
inline

constructor

Definition at line 24 of file QBaseType.hh.

References QBaseType< T >::Clear().

◆ QBaseType() [2/3]

template<class T >
QBaseType< T >::QBaseType ( const QBaseType< T > &  bt)
inline

copy constructor

Definition at line 27 of file QBaseType.hh.

References QBaseType< T >::operator=().

◆ QBaseType() [3/3]

template<class T >
QBaseType< T >::QBaseType ( const T &  value)
inline

copy constructor from base type

Definition at line 33 of file QBaseType.hh.

References QBaseType< T >::operator=().

Member Function Documentation

◆ ClassDef()

template<class T >
QBaseType< T >::ClassDef ( QBaseType< T >  ,
 
)
private

This is the only QObject where we do not use QObjectDef, because of templates.

◆ Clear() [1/5]

template<class T >
void QBaseType< T >::Clear
virtual

clear members

Implements QObject.

Definition at line 148 of file QBaseType.hh.

Referenced by QBaseType< T >::QBaseType().

◆ Clear() [2/5]

void QBaseType< int >::Clear ( )
inlinevirtual

reset members to default values

Implements QObject.

Definition at line 150 of file QBaseType.hh.

References Q_INT_DEFAULT.

◆ Clear() [3/5]

void QBaseType< float >::Clear ( )
inlinevirtual

reset members to default values

Implements QObject.

Definition at line 154 of file QBaseType.hh.

References Q_FLOAT_DEFAULT.

◆ Clear() [4/5]

void QBaseType< double >::Clear ( )
inlinevirtual

reset members to default values

Implements QObject.

Definition at line 159 of file QBaseType.hh.

References Q_DOUBLE_DEFAULT.

◆ Clear() [5/5]

void QBaseType< Long64_t >::Clear ( )
inlinevirtual

reset members to default values

Implements QObject.

Definition at line 164 of file QBaseType.hh.

References Q_INT_DEFAULT.

◆ Dump()

template<class T >
void QBaseType< T >::Dump ( std::ostream &  ob) const
inlinevirtual

dump value to stream

Reimplemented from QObject.

Definition at line 121 of file QBaseType.hh.

References QBaseType< T >::fValue.

◆ Duplicate()

template<class T >
QObject* QBaseType< T >::Duplicate ( ) const
inlinevirtual

create object of same type

Implements QObject.

Definition at line 134 of file QBaseType.hh.

◆ Fill()

template<class T >
bool QBaseType< T >::Fill ( Diana::QObject *  obj) const
inline

fill object of same type (like operator=)

Definition at line 124 of file QBaseType.hh.

◆ operator T()

template<class T >
QBaseType< T >::operator T ( ) const
inline

cast operator

    QBaseType<T>& operator%=(const T& value) 

{ this->operator=(fValuevalue); return *this; }

Definition at line 118 of file QBaseType.hh.

References QBaseType< T >::fValue.

◆ operator!=()

template<class T >
bool QBaseType< T >::operator!= ( const T &  value) const
inline

difference operator

Definition at line 52 of file QBaseType.hh.

References QBaseType< T >::fValue.

◆ operator*=()

template<class T >
QBaseType<T>& QBaseType< T >::operator*= ( const T &  value)
inline

operator*=

Definition at line 96 of file QBaseType.hh.

References QBaseType< T >::fValue, and QBaseType< T >::operator=().

◆ operator+=()

template<class T >
QBaseType<T>& QBaseType< T >::operator+= ( const T &  value)
inline

operator+=

Definition at line 82 of file QBaseType.hh.

References QBaseType< T >::fValue, and QBaseType< T >::operator=().

◆ operator-=()

template<class T >
QBaseType<T>& QBaseType< T >::operator-= ( const T &  value)
inline

operator-=

Definition at line 89 of file QBaseType.hh.

References QBaseType< T >::fValue, and QBaseType< T >::operator=().

◆ operator/=()

template<class T >
QBaseType<T>& QBaseType< T >::operator/= ( const T &  value)
inline

operator/=

Definition at line 103 of file QBaseType.hh.

References QBaseType< T >::fValue, and QBaseType< T >::operator=().

◆ operator<()

template<class T >
bool QBaseType< T >::operator< ( const T &  value) const
inline

less operator

Definition at line 58 of file QBaseType.hh.

References QBaseType< T >::fValue.

◆ operator<=()

template<class T >
bool QBaseType< T >::operator<= ( const T &  value) const
inline

less equal operator

Definition at line 64 of file QBaseType.hh.

References QBaseType< T >::fValue.

◆ operator=()

template<class T >
QBaseType<T>& QBaseType< T >::operator= ( const T &  value)
inline

◆ operator==()

template<class T >
bool QBaseType< T >::operator== ( const T &  value) const
inline

comparison operator

Definition at line 47 of file QBaseType.hh.

References QBaseType< T >::fValue.

◆ operator>()

template<class T >
bool QBaseType< T >::operator> ( const T &  value) const
inline

greater operator

Definition at line 76 of file QBaseType.hh.

References QBaseType< T >::fValue.

◆ operator>=()

template<class T >
bool QBaseType< T >::operator>= ( const T &  value) const
inline

greater equal operator

Definition at line 70 of file QBaseType.hh.

References QBaseType< T >::fValue.

Member Data Documentation

◆ fValue

template<class T >
T QBaseType< T >::fValue
private

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