diff --git a/modules/mol/base/doc/entity.rst b/modules/mol/base/doc/entity.rst index cf00a6b5e5069ce005a6c7b13776ee95becbe4ea..e2f1ab5713054daf5097abd6537d7859f58c4ac0 100644 --- a/modules/mol/base/doc/entity.rst +++ b/modules/mol/base/doc/entity.rst @@ -289,8 +289,11 @@ The Handle Classes Describes the type of the chain. Is one of enum ChainType: - ``CHAINTYPE_POLY``, ``CHAINTYPE_AA``, ``CHAINTYPE_NT``, - ``CHAINTYPE_UNKNOWN``, ``CHAINTYPE_N_CHAINTYPES`` + ``CHAINTYPE_POLY``, ``CHAINTYPE_NON_POLY``, ``CHAINTYPE_WATER``, + ``CHAINTYPE_POLY_PEPTIDE_D``, ``CHAINTYPE_POLY_PEPTIDE_L``, + ``CHAINTYPE_POLY_DN``, ``CHAINTYPE_POLY_RN``, ``CHAINTYPE_POLY_SAC_D``, + ``CHAINTYPE_POLY_SAC_L``, ``CHAINTYPE_POLY_DN_RN``, + ``CHAINTYPE_UNKNOWN``, ``CHAINTYPE_N_CHAINTYPES`` Where ``CHAINTYPE_N_CHAINTYPES`` holds the number of different types available. diff --git a/modules/mol/base/pymod/export_chain.cc b/modules/mol/base/pymod/export_chain.cc index 3361c5fa3ca7e0510018800870c5dcea5e4fb219..117d1b2f64fb8d6ad44254cc55b212d66f94b168 100644 --- a/modules/mol/base/pymod/export_chain.cc +++ b/modules/mol/base/pymod/export_chain.cc @@ -109,11 +109,18 @@ void export_Chain() { enum_<ChainType>("ChainType") - .value("CHAINTYPE_POLY", CHAINTYPE_POLY) - .value("CHAINTYPE_AA", CHAINTYPE_AA) - .value("CHAINTYPE_NT", CHAINTYPE_NT) - .value("CHAINTYPE_UNKNOWN", CHAINTYPE_UNKNOWN) - .value("CHAINTYPE_N_CHAINTYPES", CHAINTYPE_N_CHAINTYPES) + .value("CHAINTYPE_POLY", CHAINTYPE_POLY) + .value("CHAINTYPE_NON_POLY", CHAINTYPE_NON_POLY) + .value("CHAINTYPE_WATER", CHAINTYPE_WATER) + .value("CHAINTYPE_POLY_PEPTIDE_D", CHAINTYPE_POLY_PEPTIDE_D) + .value("CHAINTYPE_POLY_PEPTIDE_L", CHAINTYPE_POLY_PEPTIDE_L) + .value("CHAINTYPE_POLY_DN", CHAINTYPE_POLY_DN) + .value("CHAINTYPE_POLY_RN", CHAINTYPE_POLY_RN) + .value("CHAINTYPE_POLY_SAC_D", CHAINTYPE_POLY_SAC_D) + .value("CHAINTYPE_POLY_SAC_L", CHAINTYPE_POLY_SAC_L) + .value("CHAINTYPE_POLY_DN_RN", CHAINTYPE_POLY_DN_RN) + .value("CHAINTYPE_UNKNOWN", CHAINTYPE_UNKNOWN) + .value("CHAINTYPE_N_CHAINTYPES", CHAINTYPE_N_CHAINTYPES) .export_values() ; } diff --git a/modules/mol/base/src/chain_type.hh b/modules/mol/base/src/chain_type.hh index b5961e846a29b9cb02361c33614156b73f708e29..0311ebffb71055a77b5f037b4606310628e68909 100644 --- a/modules/mol/base/src/chain_type.hh +++ b/modules/mol/base/src/chain_type.hh @@ -21,11 +21,19 @@ /// \enum different kinds of chains typedef enum { - CHAINTYPE_POLY, ///< chain name by author as in PDB - CHAINTYPE_AA, ///< amino acid sequence - CHAINTYPE_NT, ///< nucleotides - CHAINTYPE_UNKNOWN, ///< guess what - CHAINTYPE_N_CHAINTYPES ///< no. of chain types + CHAINTYPE_POLY, ///< polymer + CHAINTYPE_NON_POLY, ///< non-polymer + CHAINTYPE_WATER, ///< water + CHAINTYPE_POLY_PEPTIDE_D, ///< (D) amino acid sequence + CHAINTYPE_POLY_PEPTIDE_L, ///< (L) amino acid sequence + CHAINTYPE_POLY_DN, ///< polydeoxyribonucleotide + CHAINTYPE_POLY_RN, ///< polyribonucleotide + CHAINTYPE_POLY_SAC_D, ///< polysaccharide(D) + CHAINTYPE_POLY_SAC_L, ///< polysaccharide(L) + CHAINTYPE_POLY_DN_RN, ///<polydeoxyribonucleotide/ -ribonucleotide hybrid + CHAINTYPE_UNKNOWN, ///< guess what + CHAINTYPE_N_CHAINTYPES ///< no. of chain types } ChainType; + #endif diff --git a/modules/mol/base/tests/test_chain.cc b/modules/mol/base/tests/test_chain.cc index da1e627b37232fd7fb16651066aaa7ea4f44f78f..c590ec5e22a0c99ce24791d35b756166a1e14503 100644 --- a/modules/mol/base/tests/test_chain.cc +++ b/modules/mol/base/tests/test_chain.cc @@ -211,10 +211,26 @@ BOOST_AUTO_TEST_CASE(chain_type) BOOST_CHECK(ch1.GetChainType() == CHAINTYPE_UNKNOWN); e.SetChainType(ch1, CHAINTYPE_POLY); BOOST_CHECK(ch1.GetChainType() == CHAINTYPE_POLY); - e.SetChainType(ch1, CHAINTYPE_AA); - BOOST_CHECK(ch1.GetChainType() == CHAINTYPE_AA); - e.SetChainType(ch1, CHAINTYPE_NT); - BOOST_CHECK(ch1.GetChainType() == CHAINTYPE_NT); + e.SetChainType(ch1, CHAINTYPE_NON_POLY); + BOOST_CHECK(ch1.GetChainType() == CHAINTYPE_NON_POLY); + e.SetChainType(ch1, CHAINTYPE_WATER); + BOOST_CHECK(ch1.GetChainType() == CHAINTYPE_WATER); + e.SetChainType(ch1, CHAINTYPE_POLY_PEPTIDE_D); + BOOST_CHECK(CHAINTYPE_POLY_PEPTIDE_D); + e.SetChainType(ch1, CHAINTYPE_POLY_PEPTIDE_L); + BOOST_CHECK(CHAINTYPE_POLY_PEPTIDE_L); + e.SetChainType(ch1, CHAINTYPE_POLY_DN); + BOOST_CHECK(CHAINTYPE_POLY_DN); + e.SetChainType(ch1, CHAINTYPE_POLY_RN); + BOOST_CHECK(CHAINTYPE_POLY_RN); + e.SetChainType(ch1, CHAINTYPE_POLY_SAC_D); + BOOST_CHECK(CHAINTYPE_POLY_SAC_D); + e.SetChainType(ch1, CHAINTYPE_POLY_SAC_L); + BOOST_CHECK(CHAINTYPE_POLY_SAC_L); + e.SetChainType(ch1, CHAINTYPE_POLY_DN_RN); + BOOST_CHECK(CHAINTYPE_POLY_DN_RN); + e.SetChainType(ch1, CHAINTYPE_N_CHAINTYPES); + BOOST_CHECK(CHAINTYPE_N_CHAINTYPES); e.SetChainType(ch1, CHAINTYPE_UNKNOWN); BOOST_CHECK(ch1.GetChainType() == CHAINTYPE_UNKNOWN); }