Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

gnFeature.h

Go to the documentation of this file.
00001 /////////////////////////////////////////////////////////////////////////////
00002 // File:            gnFeature.h
00003 // Purpose:         implements the gnBaseFeature for generic features
00004 // Description:     
00005 // Changes:        
00006 // Version:         libGenome 0.5.1 
00007 // Author:          Aaron Darling 
00008 // Modified by:     
00009 // Copyright:       (c) Aaron Darling 
00010 // Licenses:        See COPYING file for details 
00011 /////////////////////////////////////////////////////////////////////////////
00012 #ifndef _gnFeature_h_
00013 #define _gnFeature_h_
00014 
00015 #include "gn/gnDefs.h"
00016 
00017 #include <string>
00018 #include <vector>
00019 #include "gn/gnBaseFeature.h"
00020 #include "gn/gnBaseQualifier.h"
00021 
00022 /**
00023  * gnFeature stores sequence features in memory.
00024  * It contains a list of locations and qualifiers which are used to describe this feature.
00025  * It can be referred to by ID.
00026  */
00027 class GNDLLEXPORT gnFeature : public gnBaseFeature
00028 {
00029 public:
00030         /**
00031          * Empty constructor.
00032          */
00033         gnFeature( );
00034         /**
00035          * Creates a memory feature with the specified name.
00036          * @param name The name of the feature.
00037          * @param id The id number of the feature
00038          * @param lt The type of sequence location covered by this feature
00039          * @param broken True if the feature was broken by some sequence manipulation, false otherwise.
00040          */
00041         gnFeature( string& name, uint32 id = 0, gnLocation::gnLocationType lt = gnLocation::LT_Nothing, boolean broken = false );
00042         /**
00043          * Copy constructor.
00044          * @param s The gnFeature to copy.
00045          */
00046         gnFeature( const gnFeature& s );
00047         /**
00048          * Destructor, frees memory.
00049          */
00050         ~gnFeature();
00051 // Clone
00052         gnFeature* Clone() const;
00053 
00054 private:
00055 }; // class gnFeature
00056 
00057 inline
00058 gnFeature* gnFeature::Clone() const
00059 {
00060         return new gnFeature(*this);
00061 }
00062 
00063 #endif
00064         // _gnFeature_h_

Generated on Mon Feb 3 02:34:39 2003 for libGenome by doxygen1.3-rc3