A++ » INCLUDE » TQObject

class TQObject


This is the ROOT implementation of the Qt object communication
mechanism (see also http://www.troll.no/qt/metaobjects.html)

Signals and slots are used for communication between objects.
When an object has changed in some way that might be interesting
for the outside world, it emits a signal to tell whoever is
listening. All slots that are connected to this signal will be
activated (called).  It is even possible to connect a signal
directly to  another signal (this will emit the second signal
immediately whenever the first is emitted.) There is no limitation
on the number of slots that can be connected to a signal.
The slots will be activated in the order they were connected
to the signal. This mechanism allows objects to be easily reused,
because the object that emits a signal does not need to know
to what the signals are connected to.
Together, signals and slots make up a powerfull component
programming mechanism.

This implementation is provided by
Valeriy Onuchin (onuchin@sirius.ihep.su).


Function Members (Methods)

public:
virtual~TQObject()
static Bool_tAreAllSignalsBlocked()
Bool_tAreSignalsBlocked() const
static Bool_tBlockAllSignals(Bool_t b)
Bool_tBlockSignals(Bool_t b)
virtual voidChangedBy(const char* method)SIGNAL
static TClass*Class()
voidCollectClassSignalLists(TList& list, TClass* cls)
Bool_tConnect(const char* signal, const char* receiver_class, void* receiver, const char* slot)
static Bool_tConnect(TQObject* sender, const char* signal, const char* receiver_class, void* receiver, const char* slot)
static Bool_tConnect(const char* sender_class, const char* signal, const char* receiver_class, void* receiver, const char* slot)
virtual voidConnected(const char*)
virtual voidDestroyed()SIGNAL
Bool_tDisconnect(const char* signal = 0, void* receiver = 0, const char* slot = 0)
static Bool_tDisconnect(TQObject* sender, const char* signal = 0, void* receiver = 0, const char* slot = 0)
static Bool_tDisconnect(const char* class_name, const char* signal, void* receiver = 0, const char* slot = 0)
virtual voidDisconnected(const char*)
voidEmit(const char* signal)
voidEmit(const char* signal, Long_t* paramArr)
voidEmit(const char* signal, const char* params)
voidEmit(const char* signal, Double_t param)
voidEmit(const char* signal, Long_t param)
voidEmit(const char* signal, Long64_t param)
voidEmit(const char* signal, Bool_t param)
voidEmit(const char* signal, Char_t param)
voidEmit(const char* signal, UChar_t param)
voidEmit(const char* signal, Short_t param)
voidEmit(const char* signal, UShort_t param)
voidEmit(const char* signal, Int_t param)
voidEmit(const char* signal, UInt_t param)
voidEmit(const char* signal, ULong_t param)
voidEmit(const char* signal, ULong64_t param)
voidEmit(const char* signal, Float_t param)
voidEmitVA(const char* signal, Int_t nargs, va_list va)
voidEmitVA<>(const char* signal_name, Int_t)
TList*GetListOfClassSignals() const
TList*GetListOfConnections() const
TList*GetListOfSignals() const
virtual Bool_tHasConnection(const char* signal_name) const
virtual voidHighPriority(const char* signal_name, const char* slot_name = 0)
virtual TClass*IsA() const
virtual voidLowPriority(const char* signal_name, const char* slot_name = 0)
virtual voidMessage(const char* msg)SIGNAL
virtual Int_tNumberOfConnections() const
virtual Int_tNumberOfSignals() const
virtual voidShowMembers(TMemberInspector& insp) const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
TQObject()
protected:
static Int_tCheckConnectArgs(TQObject* sender, TClass* sender_class, const char* signal, TClass* receiver_class, const char* slot)
static TStringCompressName(const char* method_name)
static Bool_tConnectToClass(TQObject* sender, const char* signal, TClass* receiver_class, void* receiver, const char* slot)
static Bool_tConnectToClass(const char* sender_class, const char* signal, TClass* receiver_class, void* receiver, const char* slot)
virtual void*GetSender()
virtual const char*GetSenderClassName() const
private:
TQObject&operator=(const TQObject& tqo)
TQObject(const TQObject& tqo)

Data Members

protected:
TList*fListOfConnections! list of connections to this object
TList*fListOfSignals! list of signals from this object
Bool_tfSignalsBlocked! flag used for suppression of signals
static Bool_tfgAllSignalsBlockedflag used for suppression of all signals

Class Charts

Inheritance Chart:
TQObject
TApplication
TApplicationRemote
TApplicationServer
TGApplication
TRint
TEveDigitSet
TEveBoxSet
TEveQuadSet
TEveParamList
TEvePointSet
 [more...]

Function documentation

void * GetSender()
{ return this; }
const char * GetSenderClassName() const
{ return ""; }
Bool_t ConnectToClass(TQObject* sender, const char* signal, TClass* receiver_class, void* receiver, const char* slot)
Int_t CheckConnectArgs(TQObject* sender, TClass* sender_class, const char* signal, TClass* receiver_class, const char* slot)
TQObject(const TQObject& tqo)
TQObject& operator=(const TQObject& tqo)
TQObject()
virtual ~TQObject()
TList * GetListOfClassSignals() const
TList * GetListOfSignals() const
{ return fListOfSignals; }
TList * GetListOfConnections() const
{ return fListOfConnections; }
Bool_t AreSignalsBlocked() const
{ return fSignalsBlocked; }
Bool_t BlockSignals(Bool_t b)
{ Bool_t ret = fSignalsBlocked; fSignalsBlocked = b; return ret; }
void CollectClassSignalLists(TList& list, TClass* cls)
template <typename... T> void EmitVA(const char* signal, Int_t nargs, va_list va)
 void  EmitVA(const char *signal, Int_t nargs, ...);
void Emit(const char* signal)
void Emit(const char* signal, Long_t* paramArr)
void Emit(const char* signal, const char* params)
void Emit(const char* signal, Double_t param)
void Emit(const char* signal, Long_t param)
void Emit(const char* signal, Long64_t param)
void Emit(const char* signal, Bool_t param)
{ Emit(signal, (Long_t)param); }
void Emit(const char* signal, Char_t param)
{ Emit(signal, (Long_t)param); }
void Emit(const char* signal, UChar_t param)
{ Emit(signal, (Long_t)param); }
void Emit(const char* signal, Short_t param)
{ Emit(signal, (Long_t)param); }
void Emit(const char* signal, UShort_t param)
{ Emit(signal, (Long_t)param); }
void Emit(const char* signal, Int_t param)
{ Emit(signal, (Long_t)param); }
void Emit(const char* signal, UInt_t param)
{ Emit(signal, (Long_t)param); }
void Emit(const char* signal, ULong_t param)
{ Emit(signal, (Long_t)param); }
void Emit(const char* signal, ULong64_t param)
{ Emit(signal, (Long64_t) param); }
void Emit(const char* signal, Float_t param)
{ Emit(signal, (Double_t)param); }
Bool_t Connect(const char* signal, const char* receiver_class, void* receiver, const char* slot)
void HighPriority(const char* signal_name, const char* slot_name = 0)
Bool_t HasConnection(const char* signal_name) const
Int_t NumberOfSignals() const
Int_t NumberOfConnections() const
void Connected(const char* )
{ }
void Disconnected(const char* )
{ }
void Destroyed()
{ Emit("Destroyed()"); }
void ChangedBy(const char* method)
{ Emit("ChangedBy(char*)", method); }
void Message(const char* msg)
{ Emit("Message(char*)", msg); }
Bool_t Connect(TQObject* sender, const char* signal, const char* receiver_class, void* receiver, const char* slot)
Bool_t Disconnect(TQObject* sender, const char* signal = 0, void* receiver = 0, const char* slot = 0)
Bool_t AreAllSignalsBlocked()
Bool_t BlockAllSignals(Bool_t b)