library: libCore #include "TQConnection.h"

# TQConnection

class description - source file - inheritance tree (.pdf)

## class TQConnection : public TList, public TQObject

| Inheritance Chart:
`TObject`
| <- | `TCollection`
| <- | `TSeqCollection`
| <- | `TList`
`TQObject`
| <- | `TQConnection` |

        public:

                              TQConnection()
                              TQConnection(TClass* cl, void* receiver, const char* method_name)
                              TQConnection(const char* class_name, void* receiver, const char* method_name)
                              TQConnection(const TQConnection& con)
                      virtual ~TQConnection()
               static TClass* Class()
                 virtual void Destroyed()
                         void ExecuteMethod()
                         void ExecuteMethod(Int_t nargs, va_list va)
                         void ExecuteMethod(Long_t param)
                         void ExecuteMethod(Long64_t param)
                         void ExecuteMethod(Double_t param)
                         void ExecuteMethod(Long_t* params, Int_t nparam = -1)
                         void ExecuteMethod(const char* params)
                  const char* GetClassName() const
          virtual const char* GetName() const
                        void* GetReceiver() const
              virtual TClass* IsA() const
                 virtual void ls(Option_t* option = "") const
                 virtual void Print(Option_t* option = "") const
                 virtual void Print(Option_t*, Option_t* option) const
                 virtual void ShowMembers(TMemberInspector& insp, char* parent)
                 virtual void Streamer(TBuffer& b)
                         void StreamerNVirtual(TBuffer& b)

### Data Members

        protected:

          TQSlot* fSlot       slot-method calling interface
            void* fReceiver   ptr to object to which slot is applied
          TString fClassName  class name of the receiver

## Class Description

     TQConnection class is an internal class, used in the object
     communication mechanism.

     TQConnection:
        -  is a list of signal_lists containing pointers
           to this connection
        -  receiver is the object to which slot-method is applied

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

TQConnection() : TList(), TQObject()

     Default constructor.

TQConnection(TClass *cl, void *receiver, const char *method_name) : TList(), TQObject()

     TQConnection ctor.
        cl != 0  - connection to object == receiver of class == cl
                   and method == method_name
        cl == 0  - connection to function with name == method_name

TQConnection(const char *class_name, void *receiver, const char *funcname) : TList(), TQObject()

     TQConnection ctor.
        Creates connection to method of class specified by name,
        it could be interpreted class and with method == funcname.

TQConnection(const TQConnection &con): TList(), TQObject()

     Copy constructor. Ignore connections to this TQConnections

~TQConnection()

     TQConnection dtor.
        - remove this connection from all signal lists
        - we do not delete fSlot if it has other connections,
          TQSlot::fCounter > 0 .

const char* GetName() const

     Returns name of connection (aka name of slot)

void Destroyed()

     Signal Destroyed tells that connection is destroyed.

void ls(Option_t *option) const

     List TQConnection full method name and list all signals
     connected to this connection.

void Print(Option_t *) const

     Print TQConnection full method name and print all
     signals connected to this connection.

void ExecuteMethod()

     Apply slot-method to the fReceiver object without arguments.

void ExecuteMethod(Int_t nargs, va_list va)

     Apply slot-method to the fReceiver object with
     variable argument list.

void ExecuteMethod(Long_t param)

     Apply slot-method to the fReceiver object with
     single argument value.

void ExecuteMethod(Long64_t param)

     Apply slot-method to the fReceiver object with
     single argument value.

void ExecuteMethod(Double_t param)

     Apply slot-method to the fReceiver object with
     single argument value.

void ExecuteMethod(Long_t *params, Int_t nparam)

     Apply slot-method to the fReceiver object with variable
     number of argument values.

void ExecuteMethod(const char *param)

     Apply slot-method to the fReceiver object and
     with string parameter.

### Inline Functions

                  void* GetReceiver() const
            const char* GetClassName() const
                   void Print(Option_t*, Option_t* option) const
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void Streamer(TBuffer& b)
                   void StreamerNVirtual(TBuffer& b)

Author: Valeriy Onuchin & Fons Rademakers 15/10/2000
Last update: root/base:$Name: $:$Id: TQConnection.cxx,v 1.20 2005/06/22 20:18:10 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *