⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 seq_feat_handle.hpp

📁 ncbi源码
💻 HPP
字号:
/* * =========================================================================== * PRODUCTION $Log: seq_feat_handle.hpp,v $ * PRODUCTION Revision 1000.0  2004/06/01 19:25:42  gouriano * PRODUCTION PRODUCTION: IMPORTED [GCC34_MSVC7] Dev-tree R1.2 * PRODUCTION * =========================================================================== */#ifndef SEQ_FEAT_HANDLE__HPP#define SEQ_FEAT_HANDLE__HPP/*  $Id: seq_feat_handle.hpp,v 1000.0 2004/06/01 19:25:42 gouriano Exp $* ===========================================================================**                            PUBLIC DOMAIN NOTICE*               National Center for Biotechnology Information**  This software/database is a "United States Government Work" under the*  terms of the United States Copyright Act.  It was written as part of*  the author's official duties as a United States Government employee and*  thus cannot be copyrighted.  This software/database is freely available*  to the public for use. The National Library of Medicine and the U.S.*  Government have not placed any restriction on its use or reproduction.**  Although all reasonable efforts have been taken to ensure the accuracy*  and reliability of the software and data, the NLM and the U.S.*  Government do not and cannot warrant the performance or results that*  may be obtained by using this software or data. The NLM and the U.S.*  Government disclaim all warranties, express or implied, including*  warranties of performance, merchantability or fitness for any particular*  purpose.**  Please cite the author in any work or product based on this material.** ===========================================================================** Author: Aleksey Grichenko, Eugene Vasilchenko** File Description:*   Seq-feat handle**/#include <corelib/ncbiobj.hpp>#include <objmgr/impl/heap_scope.hpp>#include <util/range.hpp>#include <objects/seqloc/Na_strand.hpp>#include <objects/seqfeat/Seq_feat.hpp>#include <objects/seqfeat/SeqFeatData.hpp>#include <objmgr/impl/seq_annot_info.hpp>#include <objmgr/impl/snp_annot_info.hpp>BEGIN_NCBI_SCOPEBEGIN_SCOPE(objects)class CSeq_annot_Handle;class CSeq_feat_Handle{public:    CSeq_feat_Handle(void);    CSeq_feat_Handle(CScope& scope,                     const CSeq_annot_Info& annot_info,                     size_t index);    CSeq_feat_Handle(CScope& scope,                     const CSeq_annot_SNP_Info& snp_info,                     size_t index);    ~CSeq_feat_Handle(void);    CSeq_annot_Handle GetAnnot(void) const;    CConstRef<CSeq_feat> GetSeq_feat(void) const;    bool IsTableSNP(void) const;    typedef CRange<TSeqPos> TRange;    TRange GetRange(void) const;    // Mappings for CSeq_feat methods    bool IsSetId(void) const;    const CFeat_id& GetId(void) const;    const CSeqFeatData& GetData(void) const;    bool IsSetPartial(void) const;    bool GetPartial(void) const;    bool IsSetExcept(void) const;    bool GetExcept(void) const;    bool IsSetComment(void) const;    const string& GetComment(void) const;    bool IsSetProduct(void) const;    const CSeq_loc& GetProduct(void) const;    const CSeq_loc& GetLocation(void) const;    bool IsSetQual(void) const;    const CSeq_feat::TQual& GetQual(void) const;    bool IsSetTitle(void) const;    const string& GetTitle(void) const;    bool IsSetExt(void) const;    const CUser_object& GetExt(void) const;    bool IsSetCit(void) const;    const CPub_set& GetCit(void) const;    bool IsSetExp_ev(void) const;    CSeq_feat::EExp_ev GetExp_ev(void) const;    bool IsSetXref(void) const;    const CSeq_feat::TXref& GetXref(void) const;    bool IsSetDbxref(void) const;    const CSeq_feat::TDbxref& GetDbxref(void) const;    bool IsSetPseudo(void) const;    bool GetPseudo(void) const;    bool IsSetExcept_text(void) const;    const string& GetExcept_text(void) const;    // Access to some methods of CSeq_feat members    CSeqFeatData::E_Choice GetFeatType(void) const;    CSeqFeatData::ESubtype GetFeatSubtype(void) const;    // Table SNP only types and methods    typedef SSNP_Info::TSNPId TSNPId;    typedef SSNP_Info::TWeight TWeight;    TSNPId GetSNPId(void) const;    CSeq_id::TGi GetGi(void) const;    bool IsMinusStrand(void) const;    TWeight GetWeight(void) const;    size_t GetAllelesCount(void) const;    string GetAllele(size_t index) const;private:    const SSNP_Info& x_GetSNP_Info(void) const;    const CSeq_feat& x_GetSeq_feat(void) const;    enum EAnnotInfoType {        eType_null,        eType_Seq_annot_Info,        eType_Seq_annot_SNP_Info    };    CHeapScope                 m_Scope;    CConstRef<CSeq_annot_Info> m_Annot;    EAnnotInfoType             m_AnnotInfoType;    size_t                     m_Index;};inlinebool CSeq_feat_Handle::IsTableSNP(void) const{    return m_AnnotInfoType == eType_Seq_annot_SNP_Info;}inlinebool CSeq_feat_Handle::IsMinusStrand(void) const{    return x_GetSNP_Info().MinusStrand();}inlineCSeq_feat_Handle::TSNPId CSeq_feat_Handle::GetSNPId(void) const{    return x_GetSNP_Info().m_SNP_Id;}inlineCSeq_feat_Handle::TWeight CSeq_feat_Handle::GetWeight(void) const{    return x_GetSNP_Info().m_Weight;}inlinebool CSeq_feat_Handle::IsSetId(void) const{    return x_GetSeq_feat().IsSetId();}inlineconst CFeat_id& CSeq_feat_Handle::GetId(void) const{    return x_GetSeq_feat().GetId();}inlineconst CSeqFeatData& CSeq_feat_Handle::GetData(void) const{    return x_GetSeq_feat().GetData();}inlinebool CSeq_feat_Handle::IsSetPartial(void) const{    return x_GetSeq_feat().IsSetPartial();}inlinebool CSeq_feat_Handle::GetPartial(void) const{    return x_GetSeq_feat().GetPartial();}inlinebool CSeq_feat_Handle::IsSetExcept(void) const{    return x_GetSeq_feat().IsSetExcept();}inlinebool CSeq_feat_Handle::GetExcept(void) const{    return x_GetSeq_feat().GetExcept();}inlinebool CSeq_feat_Handle::IsSetComment(void) const{    return x_GetSeq_feat().IsSetComment();}inlineconst string& CSeq_feat_Handle::GetComment(void) const{    return x_GetSeq_feat().GetComment();}inlinebool CSeq_feat_Handle::IsSetProduct(void) const{    return x_GetSeq_feat().IsSetProduct();}inlineconst CSeq_loc& CSeq_feat_Handle::GetProduct(void) const{    return x_GetSeq_feat().GetProduct();}inlineconst CSeq_loc& CSeq_feat_Handle::GetLocation(void) const{    return x_GetSeq_feat().GetLocation();}inlinebool CSeq_feat_Handle::IsSetQual(void) const{    return x_GetSeq_feat().IsSetQual();}inlineconst CSeq_feat::TQual& CSeq_feat_Handle::GetQual(void) const{    return x_GetSeq_feat().GetQual();}inlinebool CSeq_feat_Handle::IsSetTitle(void) const{    return x_GetSeq_feat().IsSetTitle();}inlineconst string& CSeq_feat_Handle::GetTitle(void) const{    return x_GetSeq_feat().GetTitle();}inlinebool CSeq_feat_Handle::IsSetExt(void) const{    return x_GetSeq_feat().IsSetExt();}inlineconst CUser_object& CSeq_feat_Handle::GetExt(void) const{    return x_GetSeq_feat().GetExt();}inlinebool CSeq_feat_Handle::IsSetCit(void) const{    return x_GetSeq_feat().IsSetCit();}inlineconst CPub_set& CSeq_feat_Handle::GetCit(void) const{    return x_GetSeq_feat().GetCit();}inlinebool CSeq_feat_Handle::IsSetExp_ev(void) const{    return x_GetSeq_feat().IsSetExp_ev();}inlineCSeq_feat::EExp_ev CSeq_feat_Handle::GetExp_ev(void) const{    return x_GetSeq_feat().GetExp_ev();}inlinebool CSeq_feat_Handle::IsSetXref(void) const{    return x_GetSeq_feat().IsSetXref();}inlineconst CSeq_feat::TXref& CSeq_feat_Handle::GetXref(void) const{    return x_GetSeq_feat().GetXref();}inlinebool CSeq_feat_Handle::IsSetDbxref(void) const{    return x_GetSeq_feat().IsSetDbxref();}inlineconst CSeq_feat::TDbxref& CSeq_feat_Handle::GetDbxref(void) const{    return x_GetSeq_feat().GetDbxref();}inlinebool CSeq_feat_Handle::IsSetPseudo(void) const{    return x_GetSeq_feat().IsSetPseudo();}inlinebool CSeq_feat_Handle::GetPseudo(void) const{    return x_GetSeq_feat().GetPseudo();}inlinebool CSeq_feat_Handle::IsSetExcept_text(void) const{    return x_GetSeq_feat().IsSetExcept_text();}inlineconst string& CSeq_feat_Handle::GetExcept_text(void) const{    return x_GetSeq_feat().GetExcept_text();}inlineCSeqFeatData::E_Choice CSeq_feat_Handle::GetFeatType(void) const{    return x_GetSeq_feat().GetData().Which();}inlineCSeqFeatData::ESubtype CSeq_feat_Handle::GetFeatSubtype(void) const{    return x_GetSeq_feat().GetData().GetSubtype();}END_SCOPE(objects)END_NCBI_SCOPE/** ---------------------------------------------------------------------------* $Log: seq_feat_handle.hpp,v $* Revision 1000.0  2004/06/01 19:25:42  gouriano* PRODUCTION: IMPORTED [GCC34_MSVC7] Dev-tree R1.2** Revision 1.2  2004/05/06 17:32:37  grichenk* Added CanGetXXXX() methods** Revision 1.1  2004/05/04 18:06:06  grichenk* Initial revision*** ===========================================================================*/#endif  // SEQ_FEAT_HANDLE__HPP

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -