Horus Doc || C++ Reference || Class Overview   Pixels   Images   Detector   Geometry   Registry || Doxygen's quick Index  

HxEnvironment.h

00001 /*
00002  *  Copyright (c) 1998, University of Amsterdam, The Netherlands.
00003  *  All rights reserved.
00004  *
00005  *
00006  *  Author(s):
00007  *  Dennis Koelma (koelma@wins.uva.nl)
00008  *  Edo Poll (poll@wins.uva.nl)
00009  */
00010 
00011 #ifndef HxEnvironment_h
00012 #define HxEnvironment_h
00013 
00014 #include "HxIo.h"
00015 #include "HxStd.h"
00016 
00017 
00018 class L_HXBASIS HxEnvironment {
00019 public:
00020     virtual                 ~HxEnvironment();
00021     static HxEnvironment*   instance();
00022     static void             setEnvironment(HxEnvironment* env);
00023 
00024     virtual STD_OSTREAM&    outputStream();
00025     virtual STD_OSTREAM&    warningStream();
00026     virtual STD_OSTREAM&    errorStream();
00027     virtual void            flush();
00028 protected:
00029                             HxEnvironment();
00030 private:
00031     static HxEnvironment*   _inst;
00032 };
00033 
00034 
00035 #define HX_COUT  HxEnvironment::instance()->outputStream()
00036 #define HX_CWARN HxEnvironment::instance()->warningStream()
00037 #define HX_CERR  HxEnvironment::instance()->errorStream()
00038 #define HX_FLUSH HxEnvironment::instance()->flush()
00039 
00040 
00041 #endif

Generated on Tue Feb 3 14:18:33 2004 for C++Reference by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001