Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
CacheableDataType.hh
Go to the documentation of this file.
1 // -*- mode:c++;tab-width:2;indent-tabs-mode:t;show-trailing-whitespace:t;rm-trailing-spaces:t -*-
2 // vi: set ts=2 noet:
3 //
4 // (c) Copyright Rosetta Commons Member Institutions.
5 // (c) This file is part of the Rosetta software suite and is made available under license.
6 // (c) The Rosetta software is developed by the contributing members of the Rosetta Commons.
7 // (c) For more information, see http://www.rosettacommons.org. Questions about this can be
8 // (c) addressed to University of Washington UW TechTransfer, email: license@u.washington.edu.
9 
10 /// @file core/pose/datacache/CacheableDataType.hh
11 /// @brief enum indexing the data types stored in a Pose's internal DataCache
12 #ifndef INCLUDED_core_pose_datacache_CacheableDataType_hh
13 #define INCLUDED_core_pose_datacache_CacheableDataType_hh
14 
15 #include <utility/vector1.hh>
16 
17 #include <string>
18 #include <map>
19 
20 namespace core {
21 namespace pose {
22 namespace datacache {
23 
24 // hold the enum within a descriptive namespace to avoid name collisions
26 public:
27 
28 /// @brief enum indexing the data types stored in a Pose's internal DataCache
29 enum Enum {
30  BASE_PARTNER = 1, // for indexing into vector1
38  INTERFACE_INFO, //<protocols/scoring/InterfaceInfoOP
40  SITE_CST, //<protocols/scoring/SiteConstraintOP
47  JOBDIST_OUTPUT_TAG, //< a CacheableStringOP
49  SCORE_MAP, //<DiagnosticDataOP
57  STRING_MAP, // string-based annotations about a Pose
58  SCORE_LINE_STRINGS, // score entries composed of a pair< string, string >
61  TEMPLATE_HYBRIDIZATION_HISTORY, // during template hybridization, the source id for each residue
64  CHEMICAL_SHIFT_ANISOTROPY_DATA, //NMR Chemical Shift Anisotropy
65  RESIDUAL_DIPOLAR_COUPLING_DATA,//NMR Residual Dipolar Coupling data
66  RESIDUAL_DIPOLAR_COUPLING_DATA_ROHL,//NMR Residual Dipolar Coupling data - for rdc_rohl
68  PSEUDOCONTACT_SHIFT_DATA,//NMR Psuedocontact Shift (PCS) data SHOULD DESEAPPEAR END 2010
69  PSEUDOCONTACT_SHIFT_MULTI_DATA,//NMR Psuedocontact Shift (PCS) data, multi paramgnetic center
72  MEMBRANE_FAEMBED, //pba high reslution membrane embedding info
77  PB_LIFETIME_CACHE, // Poisson-boltzmann energy state dependent data (see PoissonBoltzmannEnergy)
78  SUB_TO_FULL_INFO, // protocols/swa/monte_carlo/SubToFullInfo.cc
79 
80  // *** IMPORTANT ***
81  // The 'num_cacheable_data_types' below must be the last enum, and must
82  // always be set equal to the (last-1) enum. If you append a new enum
83  // to the list, remember to change the value below!
85 };
86 
88 
89 private:
90  static void initialize_name_map();
91 
92  static bool initialized_;
93 
95  static std::map< std::string, CacheableDataType::Enum > name2enum_;
96 
97 }; // class CacheableDataType
98 
99 } // namespace datacache
100 } // namespace pose
101 } // namespace core
102 
103 #endif /* INCLUDED_core_pose_datacache_CacheableDataType_HH */