include/algo/align/splign/splign_simple.hpp

Go to the documentation of this file.
00001 #ifndef ALGO_ALIGN_SPLIGN_SIMPLE__HPP
00002 #define ALGO_ALIGN_SPLIGN_SIMPLE__HPP
00003 /* $Id: splign_simple.hpp 135359 2008-07-24 17:56:00Z kapustin $
00004 * ===========================================================================
00005 *
00006 *                            public DOMAIN NOTICE                          
00007 *               National Center for Biotechnology Information
00008 *                                                                          
00009 *  This software/database is a "United States Government Work" under the   
00010 *  terms of the United States Copyright Act.  It was written as part of    
00011 *  the author's official duties as a United States Government employee and 
00012 *  thus cannot be copyrighted.  This software/database is freely available 
00013 *  to the public for use. The National Library of Medicine and the U.S.    
00014 *  Government have not placed any restriction on its use or reproduction.  
00015 *                                                                          
00016 *  Although all reasonable efforts have been taken to ensure the accuracy  
00017 *  and reliability of the software and data, the NLM and the U.S.          
00018 *  Government do not and cannot warrant the performance or results that    
00019 *  may be obtained by using this software or data. The NLM and the U.S.    
00020 *  Government disclaim all warranties, express or implied, including       
00021 *  warranties of performance, merchantability or fitness for any particular
00022 *  purpose.                                                                
00023 *                                                                          
00024 *  Please cite the author in any work or product based on this material.   
00025 *
00026 * ===========================================================================
00027 *
00028 * Author:  Philip Johnson
00029 *
00030 * File Description:
00031 *   CSplignSimple class definition -- simplified wrapper for calling splign
00032 *
00033 * ---------------------------------------------------------------------------
00034 */
00035 
00036 #include <corelib/ncbistd.hpp>
00037 #include <algo/align/splign/splign.hpp>
00038 #include <algo/blast/api/bl2seq.hpp>
00039 
00040 BEGIN_NCBI_SCOPE
00041 
00042 BEGIN_SCOPE(objects)
00043     class CSeq_loc;
00044     class CScope;
00045     class CSeq_align_set;
00046 END_SCOPE(objects)
00047 
00048 
00049 class  CSplignSimple {
00050 public:
00051 
00052     enum ETranscriptQuality {
00053         eTQ_High,
00054         eTQ_Low
00055     };
00056 
00057     CSplignSimple(const objects::CSeq_loc& transcript,
00058                   ETranscriptQuality tq,
00059                   const objects::CSeq_loc& genomic,
00060                   objects::CScope& scope);
00061 
00062     // Setters/Getters
00063     CRef<CSplign>&            SetSplign(void);
00064     CConstRef<CSplign>        GetSplign(void) const;
00065     CRef<blast::CBl2Seq>&     SetBlast(void);
00066     CConstRef<blast::CBl2Seq> GetBlast(void) const;
00067 
00068     const CSplign::TResults&  Run(void);
00069 
00070     CRef<objects::CSeq_align_set> GetResultsAsAln(void) const;
00071 
00072 protected:
00073 
00074     CRef<CSplign>               m_Splign;
00075     CRef<blast::CBl2Seq>        m_Blast;
00076 
00077     CConstRef<objects::CSeq_id> m_TranscriptId;
00078     CConstRef<objects::CSeq_id> m_GenomicId;
00079 };
00080 
00081 END_NCBI_SCOPE
00082 
00083 #endif
00084 
00085 

Generated on Sun Dec 6 21:55:31 2009 for NCBI C++ ToolKit by  doxygen 1.4.6
Modified on Mon Dec 07 16:20:32 2009 by modify_doxy.py rev. 173732