User Manual, Developers Guide and API Documentation

TextProbeBus.hpp

Go to the documentation of this file.
00001 /*******************************************************************************
00002  * This file is part of openWNS (open Wireless Network Simulator)
00003  * _____________________________________________________________________________
00004  *
00005  * Copyright (C) 2004-2007
00006  * Chair of Communication Networks (ComNets)
00007  * Kopernikusstr. 16, D-52074 Aachen, Germany
00008  * phone: ++49-241-80-27910,
00009  * fax: ++49-241-80-22242
00010  * email: info@openwns.org
00011  * www: http://www.openwns.org
00012  * _____________________________________________________________________________
00013  *
00014  * openWNS is free software; you can redistribute it and/or modify it under the
00015  * terms of the GNU Lesser General Public License version 2 as published by the
00016  * Free Software Foundation;
00017  *
00018  * openWNS is distributed in the hope that it will be useful, but WITHOUT ANY
00019  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
00020  * A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
00021  * details.
00022  *
00023  * You should have received a copy of the GNU Lesser General Public License
00024  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
00025  *
00026  ******************************************************************************/
00027 
00028 #ifndef WNS_PROBE_BUS_TEXTPROBEBUS_HPP
00029 #define WNS_PROBE_BUS_TEXTPROBEBUS_HPP
00030 
00031 #include <WNS/probe/bus/ProbeBus.hpp>
00032 #include <WNS/pyconfig/View.hpp>
00033 
00034 #include <fstream>
00035 
00036 namespace wns { namespace probe { namespace bus {
00037 
00042     class TextProbeBus:
00043         public wns::probe::bus::ProbeBus
00044     {
00045     public:
00046         TextProbeBus(const wns::pyconfig::View& pyco);
00047 
00048         virtual ~TextProbeBus();
00049 
00051 
00052         virtual void
00053         onMeasurement(const wns::simulator::Time&,
00054                       const double& aValue,
00055                       const IContext& reg);
00056 
00057         virtual bool
00058         accepts(const wns::simulator::Time&,
00059                 const IContext& reg);
00060 
00061         virtual void
00062         output();
00064 
00065         void
00066         printText(std::ostream& theStream);
00067 
00068         void
00069         putText(std::string message);
00070 
00071     private:
00073         std::string key_;
00075         std::string outputPath_;
00077         std::string outfileBase_;
00079         bool writeHeader_;
00080 
00081         bool isJSON_;
00082 
00083         bool prependSimTimeFlag_;
00084 
00085         int simTimePrecision_;
00086 
00087         int simTimeWidth_;
00088 
00089         std::string name_;
00090 
00091         std::string description_;
00092 
00093         std::list<std::string> messages_;
00094 
00095         int skipInterval_;
00096 
00097         int numCalls_;
00098 
00099         std::string jsonEntrySeparator_;
00100     };
00101 } // bus
00102 } // probe
00103 } // wns
00104 
00105 #endif //WNS_PROBE_BUS_TEXTPROBEBUS_HPP

Generated on Sat May 26 03:31:48 2012 for openWNS by  doxygen 1.5.5