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

📄 seq_id_tree.hpp

📁 ncbi源码
💻 HPP
📖 第 1 页 / 共 2 页
字号:
class CSeq_id_GB_Tree : public CSeq_id_Textseq_Tree{protected:    virtual bool x_Check(const CSeq_id& id) const;    virtual const CTextseq_id& x_Get(const CSeq_id& id) const;};////////////////////////////////////////////////////////////////////// Pir treeclass CSeq_id_Pir_Tree : public CSeq_id_Textseq_Tree{protected:    virtual bool x_Check(const CSeq_id& id) const;    virtual const CTextseq_id& x_Get(const CSeq_id& id) const;};////////////////////////////////////////////////////////////////////// Swissprotclass CSeq_id_Swissprot_Tree : public CSeq_id_Textseq_Tree{protected:    virtual bool x_Check(const CSeq_id& id) const;    virtual const CTextseq_id& x_Get(const CSeq_id& id) const;};////////////////////////////////////////////////////////////////////// Prf treeclass CSeq_id_Prf_Tree : public CSeq_id_Textseq_Tree{protected:    virtual bool x_Check(const CSeq_id& id) const;    virtual const CTextseq_id& x_Get(const CSeq_id& id) const;};////////////////////////////////////////////////////////////////////// Tpg treeclass CSeq_id_Tpg_Tree : public CSeq_id_Textseq_Tree{protected:    virtual bool x_Check(const CSeq_id& id) const;    virtual const CTextseq_id& x_Get(const CSeq_id& id) const;};////////////////////////////////////////////////////////////////////// Tpe treeclass CSeq_id_Tpe_Tree : public CSeq_id_Textseq_Tree{protected:    virtual bool x_Check(const CSeq_id& id) const;    virtual const CTextseq_id& x_Get(const CSeq_id& id) const;};////////////////////////////////////////////////////////////////////// Tpd treeclass CSeq_id_Tpd_Tree : public CSeq_id_Textseq_Tree{protected:    virtual bool x_Check(const CSeq_id& id) const;    virtual const CTextseq_id& x_Get(const CSeq_id& id) const;};////////////////////////////////////////////////////////////////////// Other treeclass CSeq_id_Other_Tree : public CSeq_id_Textseq_Tree{protected:    virtual bool x_Check(const CSeq_id& id) const;    virtual const CTextseq_id& x_Get(const CSeq_id& id) const;};////////////////////////////////////////////////////////////////////// e_Local treeclass CSeq_id_Local_Tree : public CSeq_id_Which_Tree{public:    CSeq_id_Local_Tree(void);    ~CSeq_id_Local_Tree(void);    virtual bool Empty(void) const;    virtual CSeq_id_Handle FindInfo(const CSeq_id& id) const;    virtual CSeq_id_Handle FindOrCreate(const CSeq_id& id);    virtual bool HaveMatch(const CSeq_id_Handle& id) const;    virtual void FindMatch(const CSeq_id_Handle& id,                           TSeq_id_MatchList& id_list) const;    virtual void FindMatchStr(string sid,                              TSeq_id_MatchList& id_list) const;private:    virtual void x_Unindex(const CSeq_id_Info* info);    CSeq_id_Info* x_FindInfo(const CObject_id& oid) const;    typedef map<string, CSeq_id_Info*, PNocase> TByStr;    typedef map<int, CSeq_id_Info*>    TById;    TByStr m_ByStr;    TById  m_ById;};////////////////////////////////////////////////////////////////////// e_General treeclass CSeq_id_General_Tree : public CSeq_id_Which_Tree{public:    CSeq_id_General_Tree(void);    ~CSeq_id_General_Tree(void);    virtual bool Empty(void) const;    virtual CSeq_id_Handle FindInfo(const CSeq_id& id) const;    virtual CSeq_id_Handle FindOrCreate(const CSeq_id& id);    virtual bool HaveMatch(const CSeq_id_Handle& id) const;    virtual void FindMatch(const CSeq_id_Handle& id,                           TSeq_id_MatchList& id_list) const;    virtual void FindMatchStr(string sid,                              TSeq_id_MatchList& id_list) const;private:    virtual void x_Unindex(const CSeq_id_Info* info);    CSeq_id_Info* x_FindInfo(const CDbtag& dbid) const;    struct STagMap {    public:        typedef map<string, CSeq_id_Info*, PNocase> TByStr;        typedef map<int, CSeq_id_Info*>    TById;        TByStr m_ByStr;        TById  m_ById;    };    typedef map<string, STagMap, PNocase> TDbMap;    TDbMap m_DbMap;};////////////////////////////////////////////////////////////////////// e_Giim treeclass CSeq_id_Giim_Tree : public CSeq_id_Which_Tree{public:    CSeq_id_Giim_Tree(void);    ~CSeq_id_Giim_Tree(void);    virtual bool Empty(void) const;    virtual CSeq_id_Handle FindInfo(const CSeq_id& id) const;    virtual CSeq_id_Handle FindOrCreate(const CSeq_id& id);    virtual bool HaveMatch(const CSeq_id_Handle& ) const;    virtual void FindMatch(const CSeq_id_Handle& id,                           TSeq_id_MatchList& id_list) const;    virtual void FindMatchStr(string sid,                              TSeq_id_MatchList& id_list) const;private:    virtual void x_Unindex(const CSeq_id_Info* info);    CSeq_id_Info* x_FindInfo(const CGiimport_id& gid) const;    // 2-level indexing: first by Id, second by Db+Release    typedef vector<CSeq_id_Info*> TGiimList;    typedef map<int, TGiimList>  TIdMap;    TIdMap m_IdMap;};////////////////////////////////////////////////////////////////////// e_Patent treeclass CSeq_id_Patent_Tree : public CSeq_id_Which_Tree{public:    CSeq_id_Patent_Tree(void);    ~CSeq_id_Patent_Tree(void);    virtual bool Empty(void) const;    virtual CSeq_id_Handle FindInfo(const CSeq_id& id) const;    virtual CSeq_id_Handle FindOrCreate(const CSeq_id& id);    virtual bool HaveMatch(const CSeq_id_Handle& ) const;    virtual void FindMatch(const CSeq_id_Handle& id,                           TSeq_id_MatchList& id_list) const;    virtual void FindMatchStr(string sid,                              TSeq_id_MatchList& id_list) const;private:    virtual void x_Unindex(const CSeq_id_Info* info);    CSeq_id_Info* x_FindInfo(const CPatent_seq_id& pid) const;    // 3-level indexing: country, (number|app_number), seqid.    // Ignoring patent doc-type in indexing.    struct SPat_idMap {        typedef map<int, CSeq_id_Info*> TBySeqid;        typedef map<string, TBySeqid, PNocase> TByNumber; // or by App_number        TByNumber m_ByNumber;        TByNumber m_ByApp_number;    };    typedef map<string, SPat_idMap, PNocase> TByCountry;    TByCountry m_CountryMap;};////////////////////////////////////////////////////////////////////// e_PDB treeclass CSeq_id_PDB_Tree : public CSeq_id_Which_Tree{public:    CSeq_id_PDB_Tree(void);    ~CSeq_id_PDB_Tree(void);    virtual bool Empty(void) const;    virtual CSeq_id_Handle FindInfo(const CSeq_id& id) const;    virtual CSeq_id_Handle FindOrCreate(const CSeq_id& id);    virtual void FindMatch(const CSeq_id_Handle& id,                           TSeq_id_MatchList& id_list) const;    virtual void FindMatchStr(string sid,                              TSeq_id_MatchList& id_list) const;private:    virtual void x_Unindex(const CSeq_id_Info* info);    CSeq_id_Info* x_FindInfo(const CPDB_seq_id& pid) const;    string x_IdToStrKey(const CPDB_seq_id& id) const;    // Index by mol+chain, no date - too complicated    typedef vector<CSeq_id_Info*>  TSubMolList;    typedef map<string, TSubMolList, PNocase> TMolMap;    TMolMap m_MolMap;};///////////////////////////////////////////////////////////////////////////////// Inline methods///////////////////////////////////////////////////////////////////////////////END_SCOPE(objects)END_NCBI_SCOPE/** ---------------------------------------------------------------------------* $Log: seq_id_tree.hpp,v $* Revision 1000.1  2004/04/12 17:28:34  gouriano* PRODUCTION: UPGRADED [CATCHUP_003] Dev-tree R1.5** Revision 1.5  2004/02/19 17:25:34  vasilche* Use CRef<> to safely hold pointer to CSeq_id_Info.* CSeq_id_Info holds pointer to owner CSeq_id_Which_Tree.* Reduce number of calls to CSeq_id_Handle.GetSeqId().** Revision 1.4  2004/02/10 21:15:15  grichenk* Added reverse ID matching.** Revision 1.3  2004/01/08 02:49:11  ucko* Make m_TreeLock a recursive mutex, as CSeq_id_Textseq_Tree can no* longer safely use a fast mutex.** Revision 1.2  2003/09/30 16:22:01  vasilche* Updated internal object manager classes to be able to load ID2 data.* SNP blobs are loaded as ID2 split blobs - readers convert them automatically.* Scope caches results of requests for data to data loaders.* Optimized CSeq_id_Handle for gis.* Optimized bioseq lookup in scope.* Reduced object allocations in annotation iterators.* CScope is allowed to be destroyed before other objects using this scope are* deleted (feature iterators, bioseq handles etc).* Optimized lookup for matching Seq-ids in CSeq_id_Mapper.* Added 'adaptive' option to objmgr_demo application.** Revision 1.1  2003/06/10 19:06:35  vasilche* Simplified CSeq_id_Mapper and CSeq_id_Handle.*** ===========================================================================*/#endif  /* OBJECTS_OBJMGR___SEQ_ID_TREE__HPP */

⌨️ 快捷键说明

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