Molassembler  3.0.0
Molecule graph and conformer library
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Options.h
Go to the documentation of this file.
1 
8 #ifndef INCLUDE_MOLASSEMBLER_OPTIONS_H
9 #define INCLUDE_MOLASSEMBLER_OPTIONS_H
10 
12 #include "Molassembler/Prng.h"
13 
16 
17 namespace Scine {
18 namespace Molassembler {
19 
20 // Forward-declarations
21 class Graph;
22 
36 MASM_EXPORT Random::Engine& randomnessEngine();
37 
129 enum class MASM_EXPORT ChiralStatePreservation {
131  None,
144  Unique,
152 };
153 
158 enum class MASM_EXPORT ShapeTransition {
169 };
170 
174 struct MASM_EXPORT Options {
176  struct Thermalization {
184  static bool pyramidalInversion;
185 
193  static bool berryPseudorotation;
194 
202  static bool bartellMechanism;
203 
205  static inline void enable() {
206  pyramidalInversion = true;
207  berryPseudorotation = true;
208  bartellMechanism = true;
209  }
210 
212  static inline void disable() {
213  pyramidalInversion = false;
214  berryPseudorotation = false;
215  bartellMechanism = false;
216  }
217  };
218 
225 
233 };
234 
235 } // namespace Molassembler
236 } // namespace Scine
237 
238 #endif
static bool bartellMechanism
Definition: Options.h:202
Contains all global settings for the library.
Definition: Options.h:174
static void enable()
Sets high temperature approximation where all thermalizations are enabled.
Definition: Options.h:205
ShapeTransition
Influences the choice of shape in substituent additions and removals that lead to increases or decrea...
Definition: Options.h:158
ChiralStatePreservation
Specifies the effects of graph modifications on chiral centers.
Definition: Options.h:129
Model thermal effects on stereopermutation interconversions.
Definition: Options.h:176
static void disable()
Sets low temperature approximation where all thermalizations are disabled.
Definition: Options.h:212
static bool pyramidalInversion
Definition: Options.h:184
Don't try to preserve chiral state.
Defines symmetry names and total count.
static ShapeTransition shapeTransition
Specifies AtomStereopermutator shape choice behavior on ligand additions or removals.
Definition: Options.h:232
Wrapper class to typify Angstrom scale positional information.
static ChiralStatePreservation chiralStatePreservation
Sets the manner in which chiral state is preserved for all Molecules.
Definition: Options.h:224
static bool berryPseudorotation
Definition: Options.h:193
Random::Engine & randomnessEngine()
Randomness source for the entire library.
Engine wrapper around temple's JSF PRNG for centralized re-seeding.