Internal class, used as a base class for modules and channels. It is not intended for subclassing outside the simulation kernel.
cSoftOwner acts as a "soft owner" (see object ownership discussion in cOwnedObject documentation).
Public Member Functions | |
Constructors, destructor, assignment. | |
| cSoftOwner (const char *name=nullptr, bool namepooling=true) | |
| virtual | ~cSoftOwner () |
Redefined cObject methods. | |
| virtual bool | isSoftOwner () const override |
| virtual std::string | str () const override |
| virtual void | forEachChild (cVisitor *v) override |
Container functions. | |
| int | getNumOwnedObjects () const |
| cOwnedObject * | getOwnedObject (int k) |
Public Member Functions inherited from cNoncopyableOwnedObject | |
| cNoncopyableOwnedObject (const char *name=nullptr, bool namepooling=true) | |
| virtual cNoncopyableOwnedObject * | dup () const override |
Public Member Functions inherited from cOwnedObject | |
| cOwnedObject () | |
| cOwnedObject (const char *name, bool namepooling=true) | |
| cOwnedObject (const cOwnedObject &obj) | |
| virtual | ~cOwnedObject () |
| cOwnedObject & | operator= (const cOwnedObject &o) |
| virtual cObject * | getOwner () const override |
| virtual bool | isOwnedObject () const override |
Public Member Functions inherited from cNamedObject | |
| cNamedObject () | |
| cNamedObject (const char *name, bool namepooling=true) | |
| cNamedObject (const cNamedObject &obj) | |
| virtual | ~cNamedObject () |
| cNamedObject & | operator= (const cNamedObject &o) |
| virtual void | setName (const char *s) |
| virtual const char * | getName () const override |
| virtual void | setNamePooling (bool b) |
| virtual bool | getNamePooling () |
Public Member Functions inherited from cObject | |
| cObject () | |
| cObject (const cObject &other)=default | |
| virtual | ~cObject () |
| virtual const char * | getClassName () const |
| bool | isName (const char *s) const |
| virtual const char * | getFullName () const |
| virtual std::string | getFullPath () const |
| virtual std::string | getClassAndFullName () const |
| virtual std::string | getClassAndFullPath () const |
| const cObject * | getThisPtr () const |
| virtual std::ostream & | printOn (std::ostream &os) const |
| cObject * | findObject (const char *name, bool deep=true) |
| virtual cClassDescriptor * | getDescriptor () const |
| void | copyNotSupported () const |
Protected Member Functions | |
Redefined cObject member functions | |
| virtual void | take (cOwnedObject *obj) override |
| virtual void | drop (cOwnedObject *obj) override |
Protected Member Functions inherited from cObject | |
| void | dropAndDelete (cOwnedObject *obj) |
Additional Inherited Members | |
Static Public Member Functions inherited from cOwnedObject | |
| static long | getTotalObjectCount () |
| static long | getLiveObjectCount () |
| static void | resetObjectCounters () |
| static cSoftOwner * | getOwningContext () |
|
explicit |
Constructor.
|
virtual |
Destructor. The contained objects will be reported as undisposed.
|
overrideprotectedvirtual |
Redefined.
Reimplemented from cObject.
|
overrideprotectedvirtual |
Redefined.
Reimplemented from cObject.
|
inlineoverridevirtual |
Returns true.
Reimplemented from cObject.
|
overridevirtual |
Produces a one-line description of the object's contents. See cObject for more details.
Reimplemented from cObject.
Reimplemented in cModule, cSimpleModule, cDatarateChannel, and cChannel.
|
overridevirtual |
Calls v->visit(this) for each contained object. See cObject for more details.
Reimplemented from cObject.
Reimplemented in cModule, cComponent, and cSimpleModule.
|
inline |
Returns the number of owned objects.
| cOwnedObject* getOwnedObject | ( | int | k | ) |
Returns the kth owned object. k must be between 0 and getNumOwnedObjects()-1 (inclusive). If the index is out of bounds, nullptr is returned.