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

📄 seqport_util.cpp

📁 ncbi源码
💻 CPP
📖 第 1 页 / 共 5 页
字号:
                                     TSeqPos     uLength)        const;    TSeqPos ReverseComplementNcbi2na(CSeq_data*  in_seq,                                     TSeqPos     uBeginIdx,                                     TSeqPos     uLength)        const;    TSeqPos ReverseComplementNcbi4na(CSeq_data*  in_seq,                                     TSeqPos     uBeginIdx,                                     TSeqPos     uLength)        const;    // Reverse in copy methods    TSeqPos ReverseComplementIupacna(const CSeq_data& in_seq,                                     CSeq_data*       out_seq,                                     TSeqPos          uBeginIdx,                                     TSeqPos          uLength)        const;    TSeqPos ReverseComplementNcbi2na(const CSeq_data& in_seq,                                     CSeq_data*       out_seq,                                     TSeqPos          uBeginIdx,                                     TSeqPos          uLength)        const;    TSeqPos ReverseComplementNcbi4na(const CSeq_data& in_seq,                                     CSeq_data*       out_seq,                                     TSeqPos          uBeginIdx,                                     TSeqPos          uLength)        const;    // Append methods    TSeqPos AppendIupacna(CSeq_data*        out_seq,                          const CSeq_data&  in_seq1,                          TSeqPos           uBeginIdx1,                          TSeqPos           uLength1,                          const CSeq_data&  in_seq2,                          TSeqPos           uBeginIdx2,                          TSeqPos           uLength2)        const;    TSeqPos AppendNcbi2na(CSeq_data*          out_seq,                          const CSeq_data&  in_seq1,                          TSeqPos           uBeginIdx1,                          TSeqPos           uLength1,                          const CSeq_data&  in_seq2,                          TSeqPos           uBeginIdx2,                          TSeqPos           uLength2)        const;    TSeqPos AppendNcbi4na(CSeq_data*          out_seq,                          const CSeq_data&  in_seq1,                          TSeqPos           uBeginIdx1,                          TSeqPos           uLength1,                          const CSeq_data&  in_seq2,                          TSeqPos           uBeginIdx2,                          TSeqPos           uLength2)        const;    TSeqPos AppendNcbieaa(CSeq_data*          out_seq,                          const CSeq_data&  in_seq1,                          TSeqPos           uBeginIdx1,                          TSeqPos           uLength1,                          const CSeq_data&  in_seq2,                          TSeqPos           uBeginIdx2,                          TSeqPos           uLength2)        const;    TSeqPos AppendNcbistdaa(CSeq_data*        out_seq,                          const CSeq_data&  in_seq1,                          TSeqPos           uBeginIdx1,                          TSeqPos           uLength1,                          const CSeq_data&  in_seq2,                          TSeqPos           uBeginIdx2,                          TSeqPos           uLength2)        const;    TSeqPos AppendIupacaa(CSeq_data*          out_seq,                          const CSeq_data&  in_seq1,                          TSeqPos           uBeginIdx1,                          TSeqPos           uLength1,                          const CSeq_data&  in_seq2,                          TSeqPos           uBeginIdx2,                          TSeqPos           uLength2)        const;    void x_GetSeqFromSeqData(const CSeq_data& data,                              const string** str,                             const vector<char>** vec)        const;    void x_GetSeqFromSeqData(CSeq_data& data,                              string** str,                             vector<char>** vec)        const;};auto_ptr<CSeqportUtil_implementation> CSeqportUtil::sm_Implementation;DEFINE_STATIC_FAST_MUTEX(init_implementation_mutex); /* put back inside x_InitImplementation after Mac CodeWarrior 9.0 comes out */void CSeqportUtil::x_InitImplementation(void){    CFastMutexGuard   LOCK(init_implementation_mutex);    if ( !sm_Implementation.get() ) {        sm_Implementation.reset(new CSeqportUtil_implementation());    }}///////////////////////////////////////////////////////////////////////////////  PUBLIC (static wrappers to CSeqportUtil_implementation public methods):://TSeqPos CSeqportUtil::Convert(const CSeq_data&     in_seq, CSeq_data*           out_seq, CSeq_data::E_Choice  to_code, TSeqPos              uBeginIdx, TSeqPos              uLength, bool                 bAmbig, CRandom::TValue      seed){    return x_GetImplementation().Convert        (in_seq, out_seq, to_code, uBeginIdx, uLength, bAmbig, seed);}TSeqPos CSeqportUtil::Pack(CSeq_data*   in_seq, TSeqPos uLength){    return x_GetImplementation().Pack        (in_seq, uLength);}bool CSeqportUtil::FastValidate(const CSeq_data&   in_seq, TSeqPos            uBeginIdx, TSeqPos            uLength){    return x_GetImplementation().FastValidate        (in_seq, uBeginIdx, uLength);}void CSeqportUtil::Validate(const CSeq_data&   in_seq, vector<TSeqPos>*   badIdx, TSeqPos            uBeginIdx, TSeqPos            uLength){    x_GetImplementation().Validate        (in_seq, badIdx, uBeginIdx, uLength);}TSeqPos CSeqportUtil::GetAmbigs(const CSeq_data&     in_seq, CSeq_data*           out_seq, vector<TSeqPos>*     out_indices, CSeq_data::E_Choice  to_code, TSeqPos              uBeginIdx, TSeqPos              uLength){    return x_GetImplementation().GetAmbigs        (in_seq, out_seq, out_indices, to_code, uBeginIdx, uLength);}TSeqPos CSeqportUtil::GetCopy(const CSeq_data&   in_seq, CSeq_data*         out_seq, TSeqPos            uBeginIdx, TSeqPos            uLength){    return x_GetImplementation().GetCopy        (in_seq, out_seq, uBeginIdx, uLength);}TSeqPos CSeqportUtil::Keep(CSeq_data*   in_seq, TSeqPos      uBeginIdx, TSeqPos      uLength){    return x_GetImplementation().Keep        (in_seq, uBeginIdx, uLength);}TSeqPos CSeqportUtil::Append(CSeq_data*         out_seq, const CSeq_data&   in_seq1, TSeqPos            uBeginIdx1, TSeqPos            uLength1, const CSeq_data&   in_seq2, TSeqPos            uBeginIdx2, TSeqPos            uLength2){    return x_GetImplementation().Append        (out_seq,         in_seq1, uBeginIdx1, uLength1, in_seq2, uBeginIdx2, uLength2);}TSeqPos CSeqportUtil::Complement(CSeq_data*   in_seq, TSeqPos      uBeginIdx, TSeqPos      uLength){    return x_GetImplementation().Complement        (in_seq, uBeginIdx, uLength);}TSeqPos CSeqportUtil::Complement(const CSeq_data&   in_seq, CSeq_data*         out_seq, TSeqPos            uBeginIdx, TSeqPos            uLength){    return x_GetImplementation().Complement        (in_seq, out_seq, uBeginIdx, uLength);}TSeqPos CSeqportUtil::Reverse(CSeq_data*   in_seq, TSeqPos      uBeginIdx, TSeqPos      uLength){    return x_GetImplementation().Reverse        (in_seq, uBeginIdx, uLength);}TSeqPos CSeqportUtil::Reverse(const CSeq_data&  in_seq, CSeq_data*        out_seq, TSeqPos           uBeginIdx, TSeqPos           uLength){    return x_GetImplementation().Reverse        (in_seq, out_seq, uBeginIdx, uLength);}TSeqPos CSeqportUtil::ReverseComplement(CSeq_data*  in_seq, TSeqPos     uBeginIdx, TSeqPos     uLength){    return x_GetImplementation().ReverseComplement        (in_seq, uBeginIdx, uLength);}TSeqPos CSeqportUtil::ReverseComplement(const CSeq_data&  in_seq, CSeq_data*        out_seq, TSeqPos           uBeginIdx, TSeqPos           uLength){    return x_GetImplementation().ReverseComplement        (in_seq, out_seq, uBeginIdx, uLength);}const string& CSeqportUtil::GetIupacaa3(TIndex ncbistdaa){    return x_GetImplementation().GetIupacaa3(ncbistdaa);}bool CSeqportUtil::IsCodeAvailable(CSeq_data::E_Choice code_type){    return x_GetImplementation().IsCodeAvailable(code_type);}bool CSeqportUtil::IsCodeAvailable(ESeq_code_type code_type){    return x_GetImplementation().IsCodeAvailable(code_type);}CSeqportUtil::TPair CSeqportUtil::GetCodeIndexFromTo(CSeq_data::E_Choice code_type){    return x_GetImplementation().GetCodeIndexFromTo(code_type);}CSeqportUtil::TPair CSeqportUtil::GetCodeIndexFromTo(ESeq_code_type code_type){    return x_GetImplementation().GetCodeIndexFromTo(code_type);}const string& CSeqportUtil::GetCode(CSeq_data::E_Choice code_type,  TIndex              idx) {    return x_GetImplementation().GetCodeOrName(code_type, idx, true);}const string& CSeqportUtil::GetCode(ESeq_code_type code_type,  TIndex         idx) {    return x_GetImplementation().GetCodeOrName(code_type, idx, true);}const string& CSeqportUtil::GetName(CSeq_data::E_Choice code_type,  TIndex              idx) {    return x_GetImplementation().GetCodeOrName(code_type, idx, false);}const string& CSeqportUtil::GetName(ESeq_code_type code_type,  TIndex         idx) {    return x_GetImplementation().GetCodeOrName(code_type, idx, false);}CSeqportUtil::TIndex CSeqportUtil::GetIndex(CSeq_data::E_Choice code_type, const string&       code){    return x_GetImplementation().GetIndex(code_type, code);}CSeqportUtil::TIndex CSeqportUtil::GetIndex(ESeq_code_type code_type, const string&  code){    return x_GetImplementation().GetIndex(code_type, code);}CSeqportUtil::TIndex CSeqportUtil::GetIndexComplement(CSeq_data::E_Choice code_type, TIndex        idx){    return x_GetImplementation().GetIndexComplement(code_type, idx);}CSeqportUtil::TIndex CSeqportUtil::GetIndexComplement(ESeq_code_type code_type, TIndex         idx){    return x_GetImplementation().GetIndexComplement(code_type, idx);}CSeqportUtil::TIndex CSeqportUtil::GetMapToIndex(CSeq_data::E_Choice from_type, CSeq_data::E_Choice to_type, TIndex              from_idx){    return x_GetImplementation().GetMapToIndex(from_type, to_type, from_idx);}CSeqportUtil::TIndex CSeqportUtil::GetMapToIndex(ESeq_code_type from_type, ESeq_code_type to_type, TIndex         from_idx){    return x_GetImplementation().GetMapToIndex(from_type, to_type, from_idx);}CSeqportUtil_implementation::CSeqportUtil_implementation(){    // Initialize m_SeqCodeSet    m_SeqCodeSet = Init();    // Initialize code tables    m_Iupacna = InitCodes(eSeq_code_type_iupacna);    m_Ncbieaa = InitCodes(eSeq_code_type_ncbieaa);    m_Ncbistdaa = InitCodes(eSeq_code_type_ncbistdaa);    m_Iupacaa = InitCodes(eSeq_code_type_iupacaa);    // Initialize na complement tables    m_Iupacna_complement = InitIupacnaComplement();    m_Ncbi2naComplement = InitNcbi2naComplement();    m_Ncbi4naComplement = InitNcbi4naComplement();    // Initialize na reverse tables    m_Ncbi2naRev = InitNcbi2naRev();

⌨️ 快捷键说明

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