Detector.h

Go to the documentation of this file.
00001 /*
00002  *  BEEN: Benchmarking Environment
00003  *  ==============================
00004  *
00005  *  File author: Branislav Repcek
00006  *
00007  *  GNU Lesser General Public License Version 2.1
00008  *  ---------------------------------------------
00009  *  Copyright (C) 2004-2006 Distributed Systems Research Group,
00010  *  Faculty of Mathematics and Physics, Charles University in Prague
00011  *
00012  *  This library is free software; you can redistribute it and/or
00013  *  modify it under the terms of the GNU Lesser General Public
00014  *  License version 2.1, as published by the Free Software Foundation.
00015  *
00016  *  This library is distributed in the hope that it will be useful,
00017  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00018  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00019  *  Lesser General Public License for more details.
00020  *
00021  *  You should have received a copy of the GNU Lesser General Public
00022  *  License along with this library; if not, write to the Free Software
00023  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
00024  *  MA  02111-1307  USA
00025  */
00026 
00034 #ifndef DETECTOR_INCLUDED
00035 #define DETECTOR_INCLUDED
00036 
00037 #include "MessageReporter.h"
00038 #include "XMLFileOutput.h"
00039 #include "UnicodeString.h"
00040 
00043 namespace hwdet
00044 {
00047     class Detector : public MessageReporter
00048     {
00049     public:
00050 
00056         Detector(const String &name, const Char *enc = NULL) : 
00057         MessageReporter(name),  
00058         output(enc), 
00059         root_node(NULL) 
00060         {
00061         };
00062 
00064         virtual bool Initialize(void) = 0;
00065 
00067         virtual bool Detect(void) = 0;
00068 
00070         virtual bool Destroy(void) = 0;
00071 
00073         virtual String GetOutputString(void) const = 0;
00074 
00076         virtual bool WriteToStream(OStream &stream) const = 0;
00077         
00079         virtual String GetOutputEncoding(void)
00080         {
00081             return output.GetEncoding();
00082         }
00083     
00084     protected:
00085 
00087         XMLOutputFile   output;
00088 
00090         XMLElement      *root_node;
00091 
00092     };
00093 }
00094 
00095 #endif

Generated on Tue Dec 19 17:43:52 2006 for Detector for Windows by  doxygen 1.4.7