// // File : FdUtil.hh // // Purpose: Global header file for FdUtil namespace // // $Id: FdUtil.hh 12131 2011-03-02 15:08:08Z mathes $ // /** @file FdUtil.hh * Global header file for FdUtil namespace. * @author H.-J. Mathes, FzK */ /** @mainpage FD-DAQ C++ Utility Libraries * * @section intro Introduction * This is the collection of the FD-DAQ C++ Utility Libraries. This collection consists of classes which @li don't depend direwctly on the FD hardware @li are used commonly at many places of the FD-DAQ A brief overview of the classes and their main features is given here. @li FdUtil::InifileChain: reading configuration parameters from a list of ini-files (@see InifileChain.hh) @li FdUtil::ErrorLogger: a (incomplete) error logger using std::ostream like interface (@see ErrorLogger.hh) @li FdUtil::ErrorLoggerStream: stream implementation for the ErrorLogger (@see ErrorLoggerStream.hh) @li ErrorLogging.hh: useful macros etc. for error logging purposes @li FdUtil::Exception: general usable exception class @li FdUtil::FdConfig: solve some configuration/location specific issues on PAO hardware @li FdUtil::FdNaming: implement PAO specific naming rules, @see https://edms.cern.ch/cedar/plsql/doc.info?cookie=7032781&document_id=317390&version=1 @li FdUtil::Fd: implement PAO specific numbering conventions, see item above (@see FdNumbering.hh) @li FdStdioStream.hh: a backward compatible ostdiostream implementation * @li FdUtil::Inifile: reading configuration parameters from an ASCII file * @li FdUtil::TimeConvert: PAO time conversion routines * @li FdUtil::SingletonBase: a base class for singletons, resolving cleanup issue * @li FdUtil::Singleton: a template for singletons, soving cleanup issues with S.Meyers approach * * @li FdRoot::TRawSocketAcceptor: providing a socket fro raw messages * @li FdRoot::TSocketAcceptor: providing a TCP/IP socket, server side * @li FdRoot::TSocketConnector: connecting to a TCP/IP socket, cleint side * @li FdRoot::TTimeStamp: a class to store time information parameters, PAO conform * @li FdRoot::TIniFile: reading configuration parameters from an ASCII file (third party) * @li FdRoot::TStopWatch: re-implementation with fixes of the ROOT class * * @li FdCorba::CorbaServer: CORBA application framework implementing server side * @li FdCorba::CorbaClient: CORBA application framework implementing cleint side * @li FdCorba::ServerSocket: request TCP/IP socket parameters via CORBA * @li FdCorba::CorbaApplication: complete CORBA application framework (server & client) * @li FdCorba::CorbaHelper: helper class (common code for server & client) * @li FdCorba::Pingable: implementation for Pingable interface (@see Pingable.idl) * @li FdCorba::PingableImpl: * * @li FdDaq::BinaryFormat (BinaryFmt.hh): * @li FdDaq::VConfiguration (Configuration.hh): * @li FdDaq::DBLogger: * @li FdDaq::FdCommonIniReader: * @li FdDaq::FdOnlineDB: * @li FdDaq::FdSystem: * * @section usage Usage * * To access and use the utility libraries presented here the user must * include any of the header files FdUtil.hh, FdRoot.hh, FdCorba.hh or * FdDaq.hh into her source code: * \code #include using namespace FdUtil; * \endcode * * It is also possible to include each individual header file (see the following * documentation pages) into the users code. * * Linking:
* @li applications which want to link with a class contained in the namespace FdUtil * must be linked with: * \code -L$(FDLIBDIR) -lUtillib $(ROOTLIBS) * \endcode * * @li applications which want to link with a class contained in the namespace FdRoot * must be linked with: * \code -L$(FDLIBDIR) -lRootUtillib -lUtillib $(ROOTLIBS) * \endcode * * @li applications which want to link with a class contained in the namespace FdCorba * must be linked with: * \code -L$(FDLIBDIR) -lCorbaUtillib -lUtillib -L$(MICOLIBDIR) $(MICOLIBS) $(ROOTLIBS) * \endcode * with $(MICOLIBS) equals (on our installation) to * \code -lmicocoss -lmico -ldl * \endcode * * @section changes CHANGES * * The list of changes is maintained in the file CHANGES * @verbinclude CHANGES */ #ifndef _FdUtil_hh_ #define _FdUtil_hh_ #ifndef NO_VERSION # include #endif // NO_VERSION #include #include #include #include #include #include #include #include #include #include #include #include #include #endif // _FdUtil_hh_