Leonardus
Loading...
Searching...
No Matches
Public Member Functions | List of all members
SOcomposite Class Reference

Composite Semantic Object. More...

#include <so.h>

+ Inheritance diagram for SOcomposite:
+ Collaboration diagram for SOcomposite:

Public Member Functions

std::string opequal () const override
 String representation of object for operators '=', 'cvs' and 'stack'.
 
virtual size_t treeheight (size_t p_myheigth) const
 Tree Height.
 
 SO ()
 Ctor.
 
 SO (bool p_exec)
 Ctor.
 
 SO (const SO &p_other)
 Copy ctor.
 
 SO (SO &&)=delete
 
- Public Member Functions inherited from SO
 SO ()
 Ctor.
 
 SO (bool p_exec)
 Ctor.
 
 SO (const SO &p_other)
 Copy ctor.
 
virtual ~SO ()
 Virtual dtor.
 
 SO (SO &&)=delete
 
SO & operator= (const SO &)=delete
 
SO & operator= (SO &&)=delete
 
bool getExec () const
 Getter for exec_.
 
void setExec (bool p_exec)
 Setter for exec_.
 
virtual size_t getSize () const
 Returns the size of the SO.
 
virtual SO * dup () const =0
 Creates a new instance as copy following the red book definition.
 
virtual SO * clone () const
 Creates a new instance as copy with deep cloning.
 
virtual std::string opequalequal () const
 String representation for operators '==' and 'pstack'.
 
virtual OTCode ot () const =0
 Returns an OTCode.
 
virtual std::string type () const =0
 Returns a type name.
 
virtual bool equal (const SO *) const =0
 Checks if this SO is equal to another SO.
 
virtual bool gt (OpError &p_ec, const SO *) const
 Greater than.
 
virtual bool ge (OpError &p_ec, const SO *) const
 Greater or equal.
 
- Public Member Functions inherited from Counter< SO >
 Counter (Counter< SO > &&)=delete
 
Counter< SO > & operator= (const Counter< SO > &)=delete
 
Counter< SO > & operator= (Counter< SO > &&)=delete
 

Additional Inherited Members

- Static Public Member Functions inherited from Counter< SO >
static size_t getTotalCounter ()
 Static getter for totaly created objects.
 
static size_t getAliveCounter ()
 Static getter for objects alive.
 
static size_t getWatermarkCounter ()
 Static getter for the object counter watermark.
 
- Protected Member Functions inherited from Counter< SO >
 Counter ()
 Ctor.
 
 Counter (const Counter< SO > &)
 Copy ctor.
 
 ~Counter ()
 Dtor.
 
- Protected Member Functions inherited from DbC
 ~DbC ()=default
 Protected dtor.
 
virtual bool invariant () const noexcept
 Checks the invariants of the class in which it is defined.
 

Detailed Description

Composite Semantic Object.

Invariant
No instantiation. Inherits pure virtual functions from SO.

Member Function Documentation

◆ opequal()

std::string SOcomposite::opequal ( ) const
inlineoverridevirtual

String representation of object for operators '=', 'cvs' and 'stack'.

Returns
std::string ... The representation.

Implements SO.

Reimplemented in SOS.

◆ SO()

SO::SO ( bool  p_exec)
inlineexplicit

Ctor.

Parameters
[in]p_execThe executive attribute of the semantic object.

◆ treeheight()

virtual size_t SOcomposite::treeheight ( size_t  p_myheigth) const
inlinevirtual

Tree Height.

The composite semantic objects can contain other composite semantic objects.
This creates a tree of objects. treeheigth() calculates the height of this tree
starting at this.

Loops will be dedected by an heuristics. We stop the recursion if the heigth
exceeds maxtreeheight, a global constant in Leonardus.

Parameters
[in]p_myheigthCall with 0. Used internally for recursion.
Returns
size_t ... The maximum height of the tree of SOcomposite -or- maxtreeheight if there is a loop.

Reimplemented in SOA, SOD, and SOK.


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