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

model.h

Go to the documentation of this file.
00001 /*                               -*- Mode: C -*- 
00002  * model.h
00003  * Copyright © 2002-03 Laboratoire de Biologie Informatique et Théorique
00004  *                     Université de Montréal.
00005  * Author           : Patrick Charbonneau
00006  * Created On       : Wed Sep 12 16:48:15 2003
00007  * $Revision: 1.7 $
00008  * $Id: model.h,v 1.7 2003/10/01 13:10:52 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 
00028 #ifndef _rnaml_model_h_
00029 #define _rnaml_model_h_
00030 
00031 #include "modelinfo.h"
00032 #include "base.h"
00033 #include "strannotation.h"
00034 #include "secondarystructuredisplay.h"
00035 #include "object.h"
00036 #include "xmlcpg.h"
00037 
00038 
00039 
00043 typedef struct rnamlMODEL rnamlModel;
00044 
00049 rnamlModel* rnamlnewModel ();
00050 
00056 rnamlModel* rnamlcloneModel (const rnamlModel *model);
00057 
00062 void rnamldeleteModel (rnamlModel *model);
00063 
00069 int rnamlisModel (const rnamlObject *obj);
00070 
00077 int rnamlequalsModel (const rnamlModel *left, const rnamlModel *right);
00078 
00085 const char* rnamlgetModelId (const rnamlModel *model);
00086 
00093 void rnamlsetModelId (rnamlModel *model, const char *id);
00094 
00101 rnamlModelInfo* rnamlgetModelModelInfo (rnamlModel *model);
00102 
00108 void rnamlsetModelModelInfo (rnamlModel *model, rnamlModelInfo *modelInfo);
00109 
00115 void rnamladdModelBase (rnamlModel *model, rnamlBase *base);
00116 
00122 xmlcpgList* rnamlgetModelBases (rnamlModel *model);
00123 
00130 rnamlStrAnnotation* rnamlgetModelStrAnnotation (rnamlModel *model);
00131 
00137 void rnamlsetModelStrAnnotation (rnamlModel *model, rnamlStrAnnotation *strAnnotation);
00138 
00145 rnamlSecondaryStructureDisplay* rnamlgetModelSecondaryStructureDisplay (rnamlModel *model);
00146 
00152 void rnamlsetModelSecondaryStructureDisplay (rnamlModel *model, rnamlSecondaryStructureDisplay *secondaryStructureDisplay);
00153 
00160 xmlcpgObject* rnamltoXMLModel (const rnamlModel *model);
00161 
00162 #endif
00163 

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