Implements FUnknown and IDependent. More...
#include <fobject.h>

Public Member Functions | |
| FObject () | |
| default constructor... | |
| FObject (const FObject &) | |
| overloaded constructor... | |
| virtual | ~FObject () |
| destructor... | |
| FObject & | operator= (const FObject &) |
| overloads operator "=" as the reference assignment | |
| virtual FClassID | isA () const |
| a local alternative to getFClassID () | |
| virtual bool | isA (FClassID s) const |
| evaluates if the passed ID is of the FObject type | |
| virtual bool | isTypeOf (FClassID s, bool=true) const |
| evaluates if the passed ID is of the FObject type | |
| int32 | getRefCount () |
| returns the current interface reference count | |
| FUnknown * | unknownCast () |
| get FUnknown interface from object | |
| virtual tresult | queryInterface (const TUID iid, void **obj) |
| please refer to FUnknown::queryInterface () | |
| virtual uint32 | addRef () |
| please refer to FUnknown::addref () | |
| virtual uint32 | release () |
| please refer to FUnknown::release () | |
| virtual void | update (FUnknown *, int32) |
| empty virtual method that should be overridden by derived classes for data updates upon changes | |
| void | addDependent (IDependent *dep) |
| adds dependency to the object | |
| void | removeDependent (IDependent *dep) |
| removes dependency from the object | |
| virtual void | changed (int32 msg=kChanged) |
| Inform all dependents, that the object has changed. | |
| virtual void | deferUpdate (int32 msg=kChanged) |
| Similar to triggerUpdates, except only delivered in idle (usefull in collecting updates). | |
| virtual void | updateDone (int32) |
| empty virtual method that should be overridden by derived classes | |
Static Public Member Functions | |
| static FClassID | getFClassID () |
| return Class ID as an ASCII string (statically) | |
| static void | setUpdateHandler (IUpdateHandler *handler) |
| set method for the local attribute | |
| static IUpdateHandler * | getUpdateHandler () |
| get method for the local attribute | |
| static bool | classIDsEqual (FClassID ci1, FClassID ci2) |
| compares (evaluates) 2 class IDs | |
| static FObject * | unknownToObject (FUnknown *unknown) |
| pointer conversion from FUnknown to FObject | |
Static Public Attributes | |
| static const FUID | iid |
| Special UID that is used to cast an FUnknown pointer to a FObject. | |
Protected Attributes | |
| int32 | refCount |
| COM-model local reference count. | |
Static Protected Attributes | |
| static IUpdateHandler * | gUpdateHandler = 0 |
Implements FUnknown and IDependent.
FObject is a polymorphic class that implements IDependent (of SKI module) and therefore derived from FUnknown, which is the most abstract base class of all.
All COM-like virtual methods of FUnknown such as queryInterface(), addRef(), release() are implemented here. On top of that, dependency-related methods are implemented too.
Pointer casting is done via the template methods FCast, either FObject to FObject or FUnknown to FObject.
FObject supports a new singleton concept, therefore these objects are deleted automatically upon program termination.
| FObject | ( | ) | [inline] |
default constructor...
| virtual ~FObject | ( | ) | [inline, virtual] |
destructor...
| static FClassID getFClassID | ( | ) | [inline, static] |
return Class ID as an ASCII string (statically)
Reimplemented in StringObject, FLockObject, and UpdateHandler.
| virtual FClassID isA | ( | ) | const [inline, virtual] |
a local alternative to getFClassID ()
Reimplemented in StringObject, FLockObject, and UpdateHandler.
| virtual bool isA | ( | FClassID | s | ) | const [inline, virtual] |
evaluates if the passed ID is of the FObject type
Reimplemented in StringObject, FLockObject, and UpdateHandler.
| virtual bool isTypeOf | ( | FClassID | s, | |
| bool | = true | |||
| ) | const [inline, virtual] |
evaluates if the passed ID is of the FObject type
Reimplemented in StringObject, FLockObject, and UpdateHandler.
| int32 getRefCount | ( | ) | [inline] |
returns the current interface reference count
| FUnknown* unknownCast | ( | ) | [inline] |
get FUnknown interface from object
| tresult queryInterface | ( | const TUID | iid, | |
| void ** | obj | |||
| ) | [virtual] |
please refer to FUnknown::queryInterface ()
| uint32 addRef | ( | ) | [virtual] |
please refer to FUnknown::addref ()
Reimplemented in StringObject, and UpdateHandler.
| uint32 release | ( | ) | [virtual] |
please refer to FUnknown::release ()
Reimplemented in StringObject, and UpdateHandler.
| virtual void update | ( | FUnknown * | , | |
| int32 | ||||
| ) | [inline, virtual] |
empty virtual method that should be overridden by derived classes for data updates upon changes
| void addDependent | ( | IDependent * | dep | ) |
adds dependency to the object
| void removeDependent | ( | IDependent * | dep | ) |
removes dependency from the object
| void changed | ( | int32 | msg = kChanged |
) | [virtual] |
Inform all dependents, that the object has changed.
| void deferUpdate | ( | int32 | msg = kChanged |
) | [virtual] |
Similar to triggerUpdates, except only delivered in idle (usefull in collecting updates).
| virtual void updateDone | ( | int32 | ) | [inline, virtual] |
empty virtual method that should be overridden by derived classes
| static void setUpdateHandler | ( | IUpdateHandler * | handler | ) | [inline, static] |
set method for the local attribute
| static IUpdateHandler* getUpdateHandler | ( | ) | [inline, static] |
get method for the local attribute
| FObject * unknownToObject | ( | FUnknown * | unknown | ) | [inline, static] |
pointer conversion from FUnknown to FObject
int32 refCount [protected] |
COM-model local reference count.
IUpdateHandler * gUpdateHandler = 0 [static, protected] |