00001 // -*- Mode: C++; tab-width: 2; -*- 00002 // vi: set ts=2: 00003 // 00004 // -------------------------------------------------------------------------- 00005 // OpenMS Mass Spectrometry Framework 00006 // -------------------------------------------------------------------------- 00007 // Copyright (C) 2003-2008 -- Oliver Kohlbacher, Knut Reinert 00008 // 00009 // This library is free software; you can redistribute it and/or 00010 // modify it under the terms of the GNU Lesser General Public 00011 // License as published by the Free Software Foundation; either 00012 // version 2.1 of the License, or (at your option) any later version. 00013 // 00014 // This library is distributed in the hope that it will be useful, 00015 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00017 // Lesser General Public License for more details. 00018 // 00019 // You should have received a copy of the GNU Lesser General Public 00020 // License along with this library; if not, write to the Free Software 00021 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00022 // 00023 // -------------------------------------------------------------------------- 00024 // $Maintainer: Martin Langwisch $ 00025 // -------------------------------------------------------------------------- 00026 00027 #ifndef OPENMS_FORMAT_HANDLERS_PTMXMLHANDLER_H 00028 #define OPENMS_FORMAT_HANDLERS_PTMXMLHANDLER_H 00029 00030 #include <OpenMS/FORMAT/HANDLERS/XMLHandler.h> 00031 #include <OpenMS/METADATA/ProteinIdentification.h> 00032 00033 #include <vector> 00034 #include <map> 00035 #include <fstream> 00036 00037 namespace OpenMS 00038 { 00039 namespace Internal 00040 { 00044 class PTMXMLHandler 00045 : public XMLHandler 00046 { 00047 public: 00049 PTMXMLHandler(std::map< String, std::pair< String, String > >& ptm_informations, const String& filename); 00050 00052 virtual ~PTMXMLHandler(); 00053 00055 void writeTo(std::ostream& os); 00056 00057 // Docu in base class 00058 virtual void endElement(const XMLCh* const /*uri*/, const XMLCh* const /*local_name*/, const XMLCh* const qname); 00059 00060 // Docu in base class 00061 virtual void startElement(const XMLCh* const /*uri*/, const XMLCh* const /*local_name*/, const XMLCh* const qname, const xercesc::Attributes& attributes); 00062 00063 // Docu in base class 00064 virtual void characters(const XMLCh* const chars, unsigned int /*length*/); 00065 00066 protected: 00067 std::map< String, std::pair< String, String > >& ptm_informations_; 00068 String name_, tag_, composition_; 00069 bool open_tag_; 00070 }; 00071 00072 } // namespace Internal 00073 00074 } // namespace OpenMS 00075 00076 #endif // OPENMS_FORMAT_HANDLERS_PTMXMLHANDLER_H
Generated Tue Apr 1 15:36:37 2008 -- using doxygen 1.5.4 | OpenMS / TOPP 1.1 |