diff options
author | Dimitri van Heesch <dimitri@stack.nl> | 2008-07-27 14:59:10 (GMT) |
---|---|---|
committer | Dimitri van Heesch <dimitri@stack.nl> | 2008-07-27 14:59:10 (GMT) |
commit | 6bf92c5d7efffb6a04c3ccbfc144ad944200fed2 (patch) | |
tree | 201e94696e0c1cb55ffa8fd45c97dfa1ac586f0f /examples/manual.c | |
parent | 956cf8647cb54a930d1d9c65fb01cc4d9498f2bd (diff) | |
download | Doxygen-6bf92c5d7efffb6a04c3ccbfc144ad944200fed2.zip Doxygen-6bf92c5d7efffb6a04c3ccbfc144ad944200fed2.tar.gz Doxygen-6bf92c5d7efffb6a04c3ccbfc144ad944200fed2.tar.bz2 |
Release-1.5.6-20080727
Diffstat (limited to 'examples/manual.c')
-rw-r--r-- | examples/manual.c | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/examples/manual.c b/examples/manual.c new file mode 100644 index 0000000..fac6832 --- /dev/null +++ b/examples/manual.c @@ -0,0 +1,87 @@ +/** + * \file manual.c + */ + +typedef struct Object Object; //!< Object type +typedef struct Vehicle Vehicle; //!< Vehicle type +typedef struct Car Car; //!< Car type +typedef struct Truck Truck; //!< Truck type + +/*! + * Base object class. + */ +struct Object +{ + int ref; //!< \private Reference count. +}; + + +/*! + * Increments object reference count by one. + * \public \memberof Object + */ +static Object * objRef(Object *obj); + + +/*! + * Decrements object reference count by one. + * \public \memberof Object + */ +static Object * objUnref(Object *obj); + + +/*! + * Vehicle class. + * \extends Object + */ +struct Vehicle +{ + Object base; //!< \protected Base class. +}; + + +/*! + * Starts the vehicle. + * \public \memberof Vehicle + */ +void vehicleStart(Vehicle *obj); + + +/*! + * Stops the vehicle. + * \public \memberof Vehicle + */ +void vehicleStop(Vehicle *obj); + + +/*! + * Car class. + * \extends Vehicle + */ +struct Car +{ + Vehicle base; //!< \protected Base class. +}; + + +/*! + * Truck class. + * \extends Vehicle + */ +struct Truck +{ + Vehicle base; //!< \protected Base class. +}; + + +/*! + * Main function. + * + * Ref vehicleStart(), objRef(), objUnref(). + */ +int main(void) +{ + Car c; + vehicleStart((Vehicle*) &c); +} + |