diff options
author | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2008-07-27 14:59:10 (GMT) |
---|---|---|
committer | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2008-07-27 14:59:10 (GMT) |
commit | 016a22cd3abf688848cbe07315790fa4f14b0eef (patch) | |
tree | 201e94696e0c1cb55ffa8fd45c97dfa1ac586f0f /examples/manual.c | |
parent | f7e90abb5cdcb69a618505177683e9ac74a2bdb8 (diff) | |
download | Doxygen-016a22cd3abf688848cbe07315790fa4f14b0eef.zip Doxygen-016a22cd3abf688848cbe07315790fa4f14b0eef.tar.gz Doxygen-016a22cd3abf688848cbe07315790fa4f14b0eef.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); +} + |