]> granicus.if.org Git - icinga2/commitdiff
Updated documentation.
authorGunnar Beutner <gunnar@beutner.name>
Fri, 18 May 2012 20:21:28 +0000 (22:21 +0200)
committerGunnar Beutner <gunnar@beutner.name>
Fri, 18 May 2012 20:21:28 +0000 (22:21 +0200)
38 files changed:
attic/condvar.h
attic/lock.h
attic/mutex.h
attic/thread.h
base/application.h
base/component.h
base/configcollection.h
base/confighive.h
base/configobject.h
base/dictionary.h
base/exception.h
base/fifo.h
base/i2-base.h
base/memory.h
base/object.h
base/observable.h
base/socket.h
base/tcpclient.h
base/tcpserver.h
base/tcpsocket.h
base/timer.h
base/tlsclient.h
base/utility.h
base/variant.h
icinga/endpoint.h
icinga/endpointmanager.h
icinga/i2-icinga.h
icinga/icingaapplication.h
icinga/icingacomponent.h
icinga/jsonrpcendpoint.h
icinga/virtualendpoint.h
jsonrpc/i2-jsonrpc.h
jsonrpc/jsonrpcclient.h
jsonrpc/jsonrpcserver.h
jsonrpc/messagepart.h
jsonrpc/netstring.h
jsonrpc/rpcrequest.h
jsonrpc/rpcresponse.h

index b8cbcd41bee1d58744b9799c911ee998c225b8ab..d768fe7b2570e2272e834a21910576b4c71c8406 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * A wrapper around OS-specific condition variable functionality.
+ *
+ * @ingroup base
  */
 class I2_BASE_API CondVar
 {
index 62db329d46a29de8f7b9371c9895e17a83e35cd8..a5e7894c840b24bea7db2dafac8adff02c04078f 100644 (file)
@@ -26,6 +26,8 @@ namespace icinga
 /**
  * A lock that is held on a mutex and automatically released when the Lock
  * object is destroyed.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Lock
 {
index 8c48b487a00327a3f1cdf7171055db8ba5710908..cdc65da74c9893823f1fe68646310c48c1f87ad6 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * A wrapper around OS-specific mutex functionality.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Mutex
 {
index 7f32370250342b139288bdb63b3b7a8283ed4f27..8e99280689753161d29271ac8186d7e0eb3c2851 100644 (file)
@@ -33,6 +33,8 @@ struct ThreadParameters
 
 /**
  * A wrapper around OS-specific thread functionality.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Thread
 {
index 1bec711942a8cf25b8483a892d8ace104ea875fe..6fce496145f4cc0bae610d23c39c707694cb5e0b 100644 (file)
@@ -28,6 +28,8 @@ DEFINE_EXCEPTION_CLASS(ComponentLoadException);
 
 /**
  * Abstract base class for applications.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Application : public Object {
 private:
index a1eda5e5858e202ff55643a7d874f24824757045..b5d260294f9004aab62f0878079bf5a6bbd23fee 100644 (file)
@@ -26,6 +26,8 @@ namespace icinga
 /**
  * An application extension that can be dynamically loaded
  * at run-time.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Component : public Object
 {
index a37332ab1073d7749dc27be620e9744a6841e989..21db9af4f7031fdeeae8b97a74ab967656d060fd 100644 (file)
@@ -27,6 +27,8 @@ class ConfigHive;
 
 /**
  * A collection of configuration objects that each have the same type.
+ *
+ * @ingroup base
  */
 class I2_BASE_API ConfigCollection : public Object
 {
index 0bb3b708a6311da491b32d4a908ccccc32fdd471..57e38486968e8791c16140c6b2ac86aeb7ce6bd0 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * A collection of all configuration objects that belong to an application.
+ *
+ * @ingroup base
  */
 class I2_BASE_API ConfigHive : public Object
 {
index 9f9bdeec799b1f70f6822e5756ea41c0ae084128..3056e52f2c489c0d337081affa6ad1183ac76267 100644 (file)
@@ -29,6 +29,8 @@ class ConfigHive;
 
 /**
  * A configuration object that has arbitrary properties.
+ *
+ * @ingroup base
  */
 class I2_BASE_API ConfigObject : public Dictionary
 {
index 9891335e5bcba8377aaa397181d3afcf013ac9b1..58d35911acf62688b8aa3ef36b57c326c5528400 100644 (file)
@@ -28,6 +28,8 @@ typedef map<string, Variant>::iterator DictionaryIterator;
 
 /**
  * A container that holds key-value pairs.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Dictionary : public Object
 {
index b3638a15b5f2701f21bd3af114d375626ae98502..a85b039ba4f3b5959724cde30f7beb4a6ea032ff 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * Base class for all exceptions.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Exception : exception
 {
@@ -65,8 +67,28 @@ public:
                }                                                       \
        }
 
+/**
+ * An exception that is thrown when a certain feature
+ * is not implemented.
+ *
+ * @ingroup base
+ */
 DEFINE_EXCEPTION_CLASS(NotImplementedException);
+
+/**
+ * An exception that is thrown when an argument to
+ * a function is invalid.
+ *
+ * @ingroup base
+ */
 DEFINE_EXCEPTION_CLASS(InvalidArgumentException);
+
+/**
+ * An exception that is thrown when a cast yields
+ * an invalid result.
+ *
+ * @ingroup base
+ */
 DEFINE_EXCEPTION_CLASS(InvalidCastException);
 
 #ifdef _WIN32
index 689505d8e70efc275e7a93d5559c82b8bc89cea2..c0a289d008e28684f6f1c6aa495bd6469e4e2ecc 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * A byte-based FIFO buffer.
+ *
+ * @ingroup base
  */
 class I2_BASE_API FIFO : public Object
 {
index 2b6003128146d15798eb53a1277683bbc417dfcd..dea64ff244516133409fd9ff9f13e52a141d1e67 100644 (file)
 #ifndef I2BASE_H
 #define I2BASE_H
 
+/**
+ * @mainpage Foo
+ */
+
+/**
+ * @defgroup base Base class library
+ *
+ * Hello World.
+ */
+
 #ifdef _MSC_VER
 #      define HAVE_CXX11
 #      pragma warning(disable:4251)
index dbec56a2a8b9fd1f529ef5f12c3b1903e3eac800..fc3f2dec8c202e8fe39e56f3c012c1078ffe49d4 100644 (file)
@@ -27,6 +27,8 @@ DEFINE_EXCEPTION_CLASS(OutOfMemoryException);
 
 /**
  * Singleton class which implements memory allocation helpers.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Memory
 {
index cf054a77c25f5fea6e15296df3e506d105d4c06b..5405a616b3a0cc6a7e0d7c9299df760b02b48582 100644 (file)
@@ -26,6 +26,8 @@ namespace icinga
 /**
  * Base class for all heap-allocated objects. At least one of its methods
  * has to be virtual for RTTI to work.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Object : public enable_shared_from_this<Object>
 {
index c9edfd8937f7d6fe32dab748e318e6692c17d661..6cdab8223889595882a62d1e426db16dc48b204a 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * Base class for event arguments.
+ *
+ * @ingroup base
  */
 struct I2_BASE_API EventArgs
 {
@@ -33,6 +35,8 @@ struct I2_BASE_API EventArgs
 
 /**
  * An observable event. Observers can be registered for it.
+ *
+ * @ingroup base
  */
 template<class TArgs>
 class Observable
@@ -47,7 +51,7 @@ public:
        /**
         * Adds an observer to this event.
         *
-        * @param rhs The delegate.
+        * @param rhs The observer.
         */
        Observable<TArgs>& operator +=(const ObserverType& rhs)
        {
@@ -58,7 +62,7 @@ public:
        /**
         * Removes an observer from this event.
         *
-        * @param rhs The delegate.
+        * @param rhs The observer.
         */
        Observable<TArgs>& operator -=(const ObserverType& rhs)
        {
index a222913df7f86188a694f998705f98383f6f09af..c0115b0145a64c048d4684064a6aaa0ddcf8436f 100644 (file)
@@ -24,6 +24,8 @@ namespace icinga {
 
 /**
  * Event arguments for socket errors.
+ *
+ * @ingroup base
  */
 struct I2_BASE_API SocketErrorEventArgs : public EventArgs
 {
@@ -33,6 +35,8 @@ struct I2_BASE_API SocketErrorEventArgs : public EventArgs
 
 /**
  * Base class for sockets.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Socket : public Object
 {
index de7ed375717f1fdb32f7a095729c00f85a55ea27..170c1934678f3c3f4d0a13b880e1374066fe86be 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * The role of a TCP client object.
+ *
+ * @ingroup base
  */
 enum I2_BASE_API TCPClientRole
 {
@@ -34,6 +36,8 @@ enum I2_BASE_API TCPClientRole
 
 /**
  * A TCP client connection.
+ *
+ * @ingroup base
  */
 class I2_BASE_API TCPClient : public TCPSocket
 {
index 370cac0d626fc451cb614eb66c2d133f6cc3c4b0..03e4890307d8a32072e7ff5aea7da434cd76b15b 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * Event arguments for the "new client" event.
+ *
+ * @ingroup base
  */
 struct I2_BASE_API NewClientEventArgs : public EventArgs
 {
@@ -33,7 +35,10 @@ struct I2_BASE_API NewClientEventArgs : public EventArgs
 
 /**
  * A TCP server that listens on a TCP port and accepts incoming
- * client connections. */
+ * client connections.
+ *
+ * @ingroup base
+ */
 class I2_BASE_API TCPServer : public TCPSocket
 {
 private:
index e9b729996da912f5c096080ea5d305eb29b5ffc3..14c52453cfd5e47695cde976097921d3023aca40 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * A TCP socket.
+ *
+ * @ingroup base
  */
 class I2_BASE_API TCPSocket : public Socket
 {
index 17017a9f3bf36073ca006109dd29734d8d263d2f..2be847634742269ea0cbd68d238746d5bd9885c1 100644 (file)
@@ -26,6 +26,8 @@ namespace icinga {
 
 /**
  * Event arguments for the "timer expired" event.
+ *
+ * @ingroup base
  */
 struct I2_BASE_API TimerEventArgs : public EventArgs
 {
@@ -34,6 +36,8 @@ struct I2_BASE_API TimerEventArgs : public EventArgs
 
 /**
  * A timer that periodically triggers an event.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Timer : public Object
 {
index cec54277c178c604033359e60ecd7a30e6ffef48..ed0ef637b7f5d64dcca5b1c7a49ef9c925923f0c 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * Event arguments for the "SSL certificate verification" event.
+ *
+ * @ingroup base
  */
 struct I2_BASE_API VerifyCertificateEventArgs : public EventArgs
 {
@@ -37,6 +39,8 @@ struct I2_BASE_API VerifyCertificateEventArgs : public EventArgs
 
 /**
  * A TLS client connection.
+ *
+ * @ingroup base
  */
 class I2_BASE_API TLSClient : public TCPClient
 {
index 9a8462738b3533bcd6211774f488426e4b3f0b31..f2a65fbc33620931781059b04d6d6f607dba0d0a 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * Utility functions.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Utility
 {
index 3f10b722eb9abc72ac2fd1a14449552d7911027e..971f66e6a90083a014c401a8d4e524f1e9e22ca3 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * The type of a Variant object.
+ *
+ * @ingroup base
  */
 enum I2_BASE_API VariantType
 {
@@ -36,6 +38,8 @@ enum I2_BASE_API VariantType
 
 /**
  * A type that can hold an arbitrary value.
+ *
+ * @ingroup base
  */
 class I2_BASE_API Variant
 {
index 59f046c85c63654ee9f8d19f54ce490df21f55b0..f0fe409f9e2c7802939b36b990657812fb231a0d 100644 (file)
@@ -27,6 +27,8 @@ class EndpointManager;
 
 /**
  * An endpoint that can be used to send and receive messages.
+ *
+ * @ingroup icinga
  */
 class I2_ICINGA_API Endpoint : public Object
 {
index f6e322638debbc82a7e8ade2f5d76bca5c59cb01..204579b4d5d564124eabb11b255dcf8f0eb07a5c 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * Event arguments for the "new endpoint registered" event.
+ *
+ * @ingroup icinga
  */
 struct I2_ICINGA_API NewEndpointEventArgs : public EventArgs
 {
@@ -33,6 +35,8 @@ struct I2_ICINGA_API NewEndpointEventArgs : public EventArgs
 
 /**
  * Forwards messages between endpoints.
+ *
+ * @ingroup icinga
  */
 class I2_ICINGA_API EndpointManager : public Object
 {
index ba79aec3542ebbbb933e28730a0d26a98ffa617f..b29133be465d503cecdafb23ff0cbb0da9b37496 100644 (file)
 #ifndef I2ICINGA_H
 #define I2ICINGA_H
 
+/**
+ * @defgroup icinga
+ */
+
 #include <i2-base.h>
 #include <i2-jsonrpc.h>
 #include <set>
index 15f903e83dd688acf82a15f1d3f10a30bf57f025..0f25b4d6adfc262a7551d1594d3e509dc5fcc052 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * The Icinga application.
+ *
+ * @ingroup icinga
  */
 class I2_ICINGA_API IcingaApplication : public Application
 {
index 06745ac92eb677a6efb845c22e57205fb42720d4..63836a20ee797156bd1ce1ed31b53d3b1612576e 100644 (file)
@@ -25,6 +25,8 @@ namespace icinga
 
 /**
  * A component that can be loaded into the Icinga application at run-time.
+ *
+ * @ingroup icinga
  */
 class I2_ICINGA_API IcingaComponent : public Component
 {
index 5bf74de71b3d3da9e368f85cca1b64f3e1e10c8d..17fa2b44d34a0a7d5f5b2e827e6eb1241d880cf5 100644 (file)
@@ -25,7 +25,10 @@ namespace icinga
 
 /**
  * A JSON-RPC endpoint that can be used to communicate with a remote
- * Icinga instance. */
+ * Icinga instance.
+ *
+ * @ingroup icinga
+ */
 class I2_ICINGA_API JsonRpcEndpoint : public Endpoint
 {
 private:
index 5222502d5e2888c2990fb7f722188b86e92a0923..aa7d5d9bd7fabae4164800f8623962c701e923f4 100644 (file)
 namespace icinga
 {
 
+/**
+ * Event arguments for the "new request" event.
+ *
+ * @ingroup icinga
+ */
 struct I2_ICINGA_API NewRequestEventArgs : public EventArgs
 {
        typedef shared_ptr<NewRequestEventArgs> Ptr;
@@ -34,6 +39,8 @@ struct I2_ICINGA_API NewRequestEventArgs : public EventArgs
 
 /**
  * A local endpoint.
+ *
+ * @ingroup icinga
  */
 class I2_ICINGA_API VirtualEndpoint : public Endpoint
 {
index 8a47c1d7b3a0690c6e2c306b7adf6eb6ac3b3901..240247a84b87ce20cfc62e440f38f0f30bab7635 100644 (file)
 #ifndef I2JSONRPC_H
 #define I2JSONRPC_H
 
+/**
+ * @defgroup jsonrpc JSON-RPC
+ */
+
 #include <map>
 #include <i2-base.h>
 
index 07aac91de90061beba02608541f14e7532c3777a..04a98f44fe3208e4292b4b2456c90b0772b596a9 100644 (file)
 namespace icinga
 {
 
+/**
+ * Event arguments for the "new message" event.
+ *
+ * @ingroup jsonrpc
+ */
 struct I2_JSONRPC_API NewMessageEventArgs : public EventArgs
 {
        typedef shared_ptr<NewMessageEventArgs> Ptr;
@@ -31,6 +36,11 @@ struct I2_JSONRPC_API NewMessageEventArgs : public EventArgs
        icinga::MessagePart Message;
 };
 
+/**
+ * A JSON-RPC client.
+ *
+ * @ingroup jsonrpc
+ */
 class I2_JSONRPC_API JsonRpcClient : public TLSClient
 {
 private:
index 76c97b006512a6e20c71a490220a38a56cb0b7a8..fa7534c7faceef79b9343a3824fab6e1a1757cef 100644 (file)
 namespace icinga
 {
 
+/**
+ * A JSON-RPC server.
+ *
+ * @ingroup jsonrpc
+ */
 class I2_JSONRPC_API JsonRpcServer : public TCPServer
 {
 public:
index 37517f51450ee803d18e17787e3fa916ef301ce9..0038d49c2696e5d2683a78a072cb37ee236daa0a 100644 (file)
@@ -27,6 +27,11 @@ namespace icinga
 
 typedef ::cJSON json_t;
 
+/**
+ * A part of an RPC message.
+ *
+ * @ingroup jsonrpc
+ */
 class I2_JSONRPC_API MessagePart
 {
 private:
index 574c12ea61f06821832052bf5fa5c2c2feac08b3..cb315445548766bc2bb3900676ef684dbc182d27 100644 (file)
 namespace icinga
 {
 
+/**
+ * Utility functions for reading/writing messages in the netstring format.
+ * See http://cr.yp.to/proto/netstrings.txt for details.
+ *
+ * @ingroup jsonrpc
+ */
 class I2_JSONRPC_API Netstring
 {
 private:
index 901353285d10c924ac7f2a0fb9cfcca32c1e761b..ef0de9934cd681b2b9159806d10b00e8869be087 100644 (file)
 namespace icinga
 {
 
+/**
+ * A JSON-RPC request message.
+ *
+ * @ingroup jsonrpc
+ */
 class I2_JSONRPC_API RpcRequest : public MessagePart
 {
 
index 6d444d3d4cc89e63623be756ff82673267162a11..af26ff0f29aaa05c75a5ab4e4d6c905aa94f74d0 100644 (file)
 namespace icinga
 {
 
+/**
+ * A JSON-RPC response message.
+ *
+ * @ingroup jsonrpc
+ */
 class I2_JSONRPC_API RpcResponse : public MessagePart
 {
 public: