Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

Unmarshaller.h

Go to the documentation of this file.
00001 //                              -*- Mode: C++ -*- 
00002 // Unmarshaller.h
00003 // Copyright © 2003 Laboratoire de Biologie Informatique et Théorique
00004 //                  Université de Montréal.
00005 // Author           : Martin Larose
00006 // Created On       : Thu Oct  9 16:39:19 2003
00007 // $Revision: 1.3 $
00008 // $Id: Unmarshaller.h,v 1.3 2003/11/10 22:58:43 larosem Exp $
00009 // 
00010 // This file is part of xmlcpg.
00011 //
00012 // xmlcpg is free software; you can redistribute it and/or modify it under
00013 // the terms of the GNU Lesser General Public License as published by the Free
00014 // Software Foundation; either version 2 of the License, or (at your option)
00015 // any later version.
00016 //
00017 // xmlcpg is distributed in the hope that it will be useful, but WITHOUT ANY
00018 // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
00019 // FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for
00020 // more details.
00021 //
00022 // You should have received a copy of the GNU Lesser General Public License
00023 // along with xmlcpg; if not, write to the Free Software Foundation, Inc.,
00024 // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
00025 
00026 
00027 #ifndef _rnaml_Unmarshaller_h_
00028 #define _rnaml_Unmarshaller_h_
00029 
00030 #include <cstdio>
00031 
00032 extern "C" {
00033 #include "unmarshaller.h"
00034 }
00035 
00036 
00037 
00038 namespace rnaml
00039 {
00040   class Rnaml;
00041   class InputStream;
00042   
00043   
00044 
00045   class Unmarshaller
00046   {
00050     rnamlUnmarshaller *um;
00051     
00052   public:
00053     
00054     // LIFECYCLE ------------------------------------------------------------
00055     
00059     Unmarshaller ();
00060     
00065     Unmarshaller (const Unmarshaller &right);
00066     
00071     Unmarshaller* clone () const { return new Unmarshaller (*this); }
00072     
00076     virtual ~Unmarshaller ();
00077 
00078     // OPERATORS ------------------------------------------------------------
00079     
00085     Unmarshaller& operator= (const Unmarshaller &right);
00086 
00092     bool operator== (const Unmarshaller &right) const;
00093     
00094     // ACCESS ---------------------------------------------------------------
00095 
00100     void setValidating (bool validating);
00101 
00102     // METHODS --------------------------------------------------------------
00103     
00104     // I/O  -----------------------------------------------------------------
00105 
00111     Rnaml* unmarshall (FILE *f) const;
00112 
00118     Rnaml* unmarshall (InputStream &is) const;
00119   };
00120 }
00121 
00122 #endif

Generated on Tue Nov 11 14:59:40 2003 for xmlcpg by doxygen1.2.18