From: Jens Thiele Date: Wed, 13 Dec 2006 17:41:10 +0000 (+0000) Subject: generate tag file, docu updates X-Git-Tag: v0.2~25 X-Git-Url: http://developer.intra2net.com/git/?p=libt2n;a=commitdiff_plain;h=a762a4763df16c8e38afe727921273cd929709a4;hp=e1d0794d7ab00e08ee6c0ed9e6d82afcdf415a84 generate tag file, docu updates --- diff --git a/doc/Doxyfile.in b/doc/Doxyfile.in index dbff2df..72fa7b6 100644 --- a/doc/Doxyfile.in +++ b/doc/Doxyfile.in @@ -1057,7 +1057,7 @@ TAGFILES = # When a file name is specified after GENERATE_TAGFILE, doxygen will create # a tag file that is based on the input files it reads. -GENERATE_TAGFILE = +GENERATE_TAGFILE = libt2n.tag # If the ALLEXTERNALS tag is set to YES all external classes will be listed # in the class index. If set to NO only the inherited external classes diff --git a/doc/index.doc b/doc/index.doc index 2c83e3f..6907478 100644 --- a/doc/index.doc +++ b/doc/index.doc @@ -3,10 +3,16 @@ /*! \mainpage libt2n - (talk to neighbor) \section intro_sec Introduction libt2n (talk to neighbor) is a C++ library for inter-process communication (IPC, s.a. http://en.wikipedia.org/wiki/Inter-process_communication) - with an additional code generator to make remote procedure calls simple. + with an additional code generator to make remote procedure calls (RPC, s.a. http://en.wikipedia.org/wiki/Remote_procedure_call) simple. (another solution perhaps would be to use C++ templates similar to postyyyman or dope - the main reason to use a code generator was that we wanted to build libraries which could be used on client side easily). + + \htmlonly + rpc +

Figure: Remote procedure call overview (http://jan.netcomp.monash.edu.au/webservices/rpc_stub.png)

+ \endhtmlonly + \par - XXX: improve this paragraph: The input for the code generator is standard C++ code (in fact we use gccxml to parse the C++ code and the code generator takes the XML as input) and you mark the procedures you want to expose to other processes. - It then generates the stubs needed. + XXX: improve this paragraph: The input for the code generator is standard C++ code (in fact we use gccxml to parse the C++ code and the code generator takes the XML as input) and you mark the procedures you want to expose to other processes. (no need for an interface definition language [IDL, s.a http://en.wikipedia.org/wiki/Interface_description_languageIDL]) + It then generates the client and server stubs needed. The exported procedures can be grouped. For each group the code generator is called and generates 6 output files: group_common.hxx, group_common.cpp, group_client.hxx, group_client.cpp, group_server.hxx, group_server.cpp. The _common files are used by client and server whereas the _client files are used by the client and the _server files by the server only. \par To simplify the build process a Makefile snippet is provided that allows to create a server program and a client library (including a corresponding .pc file) using the autotools easily. diff --git a/src/command_server.hxx b/src/command_server.hxx index 3c00262..c86b285 100644 --- a/src/command_server.hxx +++ b/src/command_server.hxx @@ -50,6 +50,7 @@ template struct Derived_from { Derived_from() { void(*p)(T*) = constraints; } }; +/// server handling group of incoming commands template class group_command_server : public command_server {