40 #pragma clang diagnostic ignored "-Woverloaded-virtual"
47 #define QObjectDef(clazz,id) \
49 virtual bool Fill(Diana::QObject* evData) const; \
50 virtual Diana::QObject* Duplicate() const; \
58 #define QObjectImp(clazz) \
59 using Diana::QObject;\
61 bool clazz::Fill(QObject* evData) const {\
62 clazz * evDatac = dynamic_cast<clazz*>(evData);\
66 return evDatac != NULL; \
68 QObject* clazz::Duplicate() const {\
69 clazz * obj = new clazz;\
160 virtual void Dump(std::ostream& o)
const;
173 virtual void Draw(Option_t* option =
"") {} ;
189 std::ostream&
operator<<(std::ostream&s,
const Diana::QObject&t);
#define Q_BEGIN_NAMESPACE
Q_END_NAMESPACE std::ostream & operator<<(std::ostream &s, const Diana::QObject &t)
error class with error type and description
base class for objects handled by QEvent and QGlobalDataManager.
virtual void Print() const
print content on screen
void Validate()
make object valid
void InValidate()
make object non valid
virtual QError WriteOnStream(std::ostream &o) const
print content to stream (intended for storage in text files)
void SetWrite(bool write=true)
write or not this object
virtual void Clear()=0
reset members to default values
int fTemporaryBits
temporary bits are used for runtime diana settings
virtual void Dump(std::ostream &o) const
print content to stream (intended for screen print or log files)
bool IsValid() const
check wheter object is valid
virtual void Draw(Option_t *option="")
void SetIsJustAdded(bool added=true)
set that this object has been just added
void CopyBits(QObject *obj) const
copy validity and temporary bits to another QObject
bool GetWrite() const
check wheter write or not this object
void QObjectSetBit(int bit, bool value)
set temporary bit
bool QObjectTestBit(int bit) const
test temporary bit
@ kWrite
write this object onto output files, this and the bits below should go in the handle?...
@ kIsJustAdded
this object has been just added to the event
@ kIsRequired
this object has been requested by somebody
@ kIsValid
object has been assigned a value
QObject & operator=(const QObject &rhs)
operator=
bool IsRequired() const
check wheter this object is required by some module
virtual QError ReadFromStream(std::istream &o)
fill content from stream (intended for storage in text files)
void Reset()
set object to non valid and calls Clear()
void SetIsRequired(bool required=true)
set that this object is required
virtual bool Fill(QObject *evData) const =0
calls operator= of inheriting classes. Validity flag and bits are not copied. This function is automa...
virtual QObject * Duplicate() const =0
create object of same type, this function is automatically declared/implemented in derived classes by...
virtual ~QObject()
destructor
bool IsJustAdded() const
check wheter this object has been just added by some module
static QObject * New(const char *object)
void FullyFill(QObject *evData) const
calls Fill(QObject*) if this QObject IsValid(). Copies Validity flag and bits
QObject()
default constructor