OMNeT++ Simulation Library  5.6.1
cResultListener Class Referenceabstract

#include <cresultlistener.h>

Description

Common abstract base class for result filters and result recorders.

Inheritance diagram for cResultListener:
cObject cIListener cResultFilter cResultRecorder cNumericResultFilter cObjectResultFilter ConstantFilter TimeFilter TotalCountFilter cNumericResultRecorder TotalCountRecorder AverageFilter CountNanFilter ErrorNanFilter IdentityFilter MaxFilter MeanFilter MinFilter RemoveRepeatsFilter SkipNanFilter SumFilter SumPerDurationFilter TimeAverageFilter PacketBitsFilter PacketBytesFilter Constant0Filter Constant1Filter CountFilter AverageRecorder ErrorNanRecorder LastValueRecorder MaxRecorder MeanRecorder MinRecorder StatisticsRecorder SumRecorder TimeAverageRecorder VectorRecorder CountRecorder

Protected Member Functions

virtual void receiveSignal (cComponent *source, simsignal_t signalID, bool b, cObject *details) override
 
virtual void receiveSignal (cComponent *source, simsignal_t signalID, long l, cObject *details) override
 
virtual void receiveSignal (cComponent *source, simsignal_t signalID, unsigned long l, cObject *details) override
 
virtual void receiveSignal (cComponent *source, simsignal_t signalID, double d, cObject *details) override
 
virtual void receiveSignal (cComponent *source, simsignal_t signalID, const SimTime &v, cObject *details) override
 
virtual void receiveSignal (cComponent *source, simsignal_t signalID, const char *s, cObject *details) override
 
virtual void receiveSignal (cComponent *source, simsignal_t signalID, cObject *obj, cObject *details) override
 
virtual void subscribedTo (cComponent *component, simsignal_t signalID) override
 
virtual void unsubscribedFrom (cComponent *component, simsignal_t signalID) override
 
virtual void finish (cComponent *component, simsignal_t signalID) override
 
- Protected Member Functions inherited from cObject
virtual void take (cOwnedObject *obj)
 
virtual void drop (cOwnedObject *obj)
 
void dropAndDelete (cOwnedObject *obj)
 

Additional Inherited Members

- Public Member Functions inherited from cObject
 cObject ()
 
 cObject (const cObject &other)
 
virtual ~cObject ()
 
virtual const char * getClassName () const
 
virtual const char * getName () const
 
bool isName (const char *s) const
 
virtual const char * getFullName () const
 
virtual std::string getFullPath () const
 
const cObjectgetThisPtr () const
 
virtual std::string str () const
 
virtual _OPPDEPRECATED std::string info () const
 
virtual _OPPDEPRECATED std::string detailedInfo () const
 
virtual cObjectdup () const
 
virtual void parsimPack (cCommBuffer *buffer) const
 
virtual void parsimUnpack (cCommBuffer *buffer)
 
virtual cObjectgetOwner () const
 
virtual bool isOwnedObject () const
 
virtual void forEachChild (cVisitor *v)
 
cObjectfindObject (const char *name, bool deep=true)
 
void copyNotSupported () const
 
- Public Member Functions inherited from cIListener
int getSubscribeCount () const
 

Member Function Documentation

◆ receiveSignal() [1/7]

virtual void receiveSignal ( cComponent source,
simsignal_t  signalID,
bool  b,
cObject details 
)
overrideprotectedvirtual

Receive an emitted signal. Note that cIListener declares several overloaded receiveSignal() methods, one for each data type (except that all integer types are merged to the long and unsigned long types). The "source" argument is the channel or module on which the emit() method was invoked, and NOT the one at which this listener is subscribed.

It is not allowed inside a receiveSignal() call to unsubscribe from the signal being received – it will cause an error to be thrown. (This is to prevent interesting cases when the listener list is being modified while the component iterates on it. The alternative would be to make a temporary copy of the listener list each time, but this is not desirable for performance reasons.)

Implements cIListener.

◆ receiveSignal() [2/7]

virtual void receiveSignal ( cComponent source,
simsignal_t  signalID,
long  l,
cObject details 
)
overrideprotectedvirtual

Receive an emitted long value. See receiveSignal(cComponent*,simsignal_t,bool,cObject*) for more info.

Implements cIListener.

◆ receiveSignal() [3/7]

virtual void receiveSignal ( cComponent source,
simsignal_t  signalID,
unsigned long  l,
cObject details 
)
overrideprotectedvirtual

Receive an emitted unsigned long value. See receiveSignal(cComponent*,simsignal_t,bool,cObject*) for more info.

Implements cIListener.

◆ receiveSignal() [4/7]

virtual void receiveSignal ( cComponent source,
simsignal_t  signalID,
double  d,
cObject details 
)
overrideprotectedvirtual

Receive an emitted double value. See receiveSignal(cComponent*,simsignal_t,bool,cObject*) for more info.

Implements cIListener.

◆ receiveSignal() [5/7]

virtual void receiveSignal ( cComponent source,
simsignal_t  signalID,
const SimTime t,
cObject details 
)
overrideprotectedvirtual

Receive an emitted simtime_t value. See receiveSignal(cComponent*,simsignal_t,bool,cObject*) for more info.

Implements cIListener.

◆ receiveSignal() [6/7]

virtual void receiveSignal ( cComponent source,
simsignal_t  signalID,
const char *  s,
cObject details 
)
overrideprotectedvirtual

Receive an emitted string value. See receiveSignal(cComponent*,simsignal_t,bool,cObject*) for more info.

Implements cIListener.

◆ receiveSignal() [7/7]

virtual void receiveSignal ( cComponent source,
simsignal_t  signalID,
cObject obj,
cObject details 
)
overrideprotectedvirtual

Receive an emitted cObject value. See receiveSignal(cComponent*,simsignal_t,bool,cObject*) for more info.

Implements cIListener.

◆ subscribedTo()

virtual void subscribedTo ( cComponent component,
simsignal_t  signalID 
)
overrideprotectedvirtual

Called when this object was added to the given component's given signal as a listener. Note that this method will only be called from subscribe() if this listener was not already subscribed.

Reimplemented from cIListener.

◆ unsubscribedFrom()

virtual void unsubscribedFrom ( cComponent component,
simsignal_t  signalID 
)
overrideprotectedvirtual

Called when this object was removed from the given component's listener list for the given signal. Note that it will not be called from unsubscribe() if this listener was not actually subscribed before.

This method is also called from cComponent's destructor for all listeners, so at this point it is not safe to cast the component pointer to any other type. Also, the method may be called several times (i.e. if the listener was subscribed to multiple signals).

It is OK for the listener to delete itself in this method (delete this). However, since this method may be called more than once if the listener is subscribed multiple times (see above), one must be careful to prevent double deletion, e.g. by reference counting.

Reimplemented from cIListener.

◆ finish()

virtual void finish ( cComponent component,
simsignal_t  signalID 
)
overrideprotectedvirtual

Called by a component on its local listeners after the component's finish() method was called. If the listener is subscribed to multiple signals or at multiple components, the method will be called multiple times. Note that finish() methods in general are not invoked if the simulation terminates with an error.

Reimplemented from cIListener.


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