summaryrefslogtreecommitdiffstats
path: root/examples/manual.c
diff options
context:
space:
mode:
authordimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2008-07-27 14:59:10 (GMT)
committerdimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2008-07-27 14:59:10 (GMT)
commit016a22cd3abf688848cbe07315790fa4f14b0eef (patch)
tree201e94696e0c1cb55ffa8fd45c97dfa1ac586f0f /examples/manual.c
parentf7e90abb5cdcb69a618505177683e9ac74a2bdb8 (diff)
downloadDoxygen-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.c87
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);
+}
+