Mod.hpp
上传用户:yhdzpy8989
上传日期:2007-06-13
资源大小:13604k
文件大小:5k
- /*
- * ===========================================================================
- * PRODUCTION $Log: Mod.hpp,v $
- * PRODUCTION Revision 1000.1 2004/06/01 18:08:51 gouriano
- * PRODUCTION PRODUCTION: UPGRADED [GCC34_MSVC7] Dev-tree R1.3
- * PRODUCTION
- * ===========================================================================
- */
- /* $Id: Mod.hpp,v 1000.1 2004/06/01 18:08:51 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: .......
- *
- * File Description:
- * .......
- *
- * Remark:
- * This code was originally generated by application DATATOOL
- * using specifications from the data definition file
- * 'omssa.asn'.
- */
- #ifndef OBJECTS_OMSSA_MOD_HPP
- #define OBJECTS_OMSSA_MOD_HPP
- // generated includes
- #include <objects/omssa/MSMod.hpp>
- #include <objects/omssa/MSRequest.hpp>
- // generated classes
- BEGIN_NCBI_SCOPE
- BEGIN_objects_SCOPE // namespace ncbi::objects::
- ///
- /// the number of mods defined in asn.1 spec
- ///
- const int kNumMods = 9;
- ///
- /// Modification types
- /// there are five kinds of mods:
- /// 1. specific to an AA
- /// 2. N terminus, not specific to an AA
- /// 3. N terminus, specific to an AA
- /// 4. C terminus, not specific to an AA
- /// 5. C terminus, specific to an AA
- ///
- const int kNumModType = 5;
- enum EMSModType {
- eModAA = 0,
- eModN,
- eModNAA,
- eModC,
- eModCAA
- };
- /////////////////////////////////////////////////////////////////////////////
- //
- // Informational arrays for mods
- //
- // These are separate arrays for speed considerations
- //
- ///
- /// categorizes existing mods as the types listed above
- ///
- const EMSModType ModTypes[kNumMods] = {
- eModN,
- eModAA,
- eModNAA,
- eModAA,
- eModAA
- };
- ///
- /// the names of the various modifications codified in the asn.1
- ///
- char const * const kModNames[kNumMods] = {
- "methylation of K",
- "oxidation of methionine",
- "carboxymethyl cysteine",
- "carbamidomethyl cysteine",
- "deamidation of K and Q",
- "propionamide cysteine",
- "phosphorylation of S",
- "phosphorylation of T",
- "phosphorylation of Y"
- };
-
- ///
- /// the characters to compare
- /// rows are indexed by mod
- /// column are the AA's modified (if any)
- ///
- const char ModChar [3][kNumMods] = {
- {'x0a','x0c','x03','x03','x0d','x03','x11','x12','x16' },
- {'x00','x00','x00','x00','x0f','x00','x00','x00','x00' },
- {'x00','x00','x00','x00','x00','x00','x00','x00','x00' }
- };
- ///
- /// the number of characters to compare
- ///
- const int NumModChars[] = { 1, 1, 1, 1, 2, 1, 1, 1, 1 };
- ///
- /// the modification masses
- ///
- const int ModMass[] = { 1403, 1600, 5801, 5702, 98, 7104, 7997, 7997, 7997};
- /////////////////////////////////////////////////////////////////////////////
- //
- // CMSMod::
- //
- // Given a set of variable mods, sorts them into categories for quick access
- //
- class NCBI_XOMSSA_EXPORT CMSMod {
- public:
- CMSMod(void) {};
- CMSMod(const CMSRequest::TVariable &Mods);
- // initialize variable mod type array
- void Init(const CMSRequest::TVariable &Mods);
- CMSRequest::TVariable &GetAAMods(EMSModType Type);
- private:
- CMSRequest::TVariable ModLists[kNumModType];
- };
- /////////////////// CMSMod inline methods
- inline CMSRequest::TVariable & CMSMod::GetAAMods(EMSModType Type)
- {
- return ModLists[Type];
- }
- END_objects_SCOPE // namespace ncbi::objects::
- END_NCBI_SCOPE
- /*
- * ===========================================================================
- *
- * $Log: Mod.hpp,v $
- * Revision 1000.1 2004/06/01 18:08:51 gouriano
- * PRODUCTION: UPGRADED [GCC34_MSVC7] Dev-tree R1.3
- *
- * Revision 1.3 2004/05/27 20:52:15 lewisg
- * better exception checking, use of AutoPtr, command line parsing
- *
- * Revision 1.2 2004/03/04 02:22:49 lewisg
- * add msvc defines
- *
- * Revision 1.1 2004/03/01 18:24:07 lewisg
- * better mod handling
- *
- *
- * ===========================================================================
- */
- #endif // OBJECTS_OMSSA_MSMOD_HPP
- /* Original file checksum: lines: 63, chars: 1907, CRC32: 6c23d0ae */