BALL  1.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Protected Attributes | List of all members
BALL::ShiftModule Class Reference

#include <BALL/NMR/shiftModule.h>

Inheritance diagram for BALL::ShiftModule:
BALL::UnaryProcessor< Composite > BALL::UnaryFunctor< Composite, Processor::Result > BALL::AnisotropyShiftProcessor BALL::ClearShiftProcessor BALL::CreateSpectrumProcessor BALL::EFShiftProcessor BALL::EmpiricalHSShiftProcessor BALL::Experiment< PeakListType > BALL::HaighMallionShiftProcessor BALL::HBondShiftProcessor BALL::JohnsonBoveyShiftProcessor BALL::RandomCoilShiftProcessor BALL::ShiftModel BALL::ShiftModel1D BALL::ShiftModel2D

Public Member Functions

Constructors and Destructors
 ShiftModule ()
 
 ShiftModule (Parameters &parameters, const String &name="")
 
 ShiftModule (const ShiftModule &module)
 
virtual ~ShiftModule ()
 
virtual void clear ()
 
Assignment
const ShiftModuleoperator= (const ShiftModule &module)
 
Accessors
void setName (const String &name)
 
const StringgetName () const
 
void setParameters (Parameters &parameters)
 
const ParametersgetParameters () const
 
virtual void init ()
 
Processor related methods
virtual bool start ()
 
virtual bool finish ()
 
Predicates
bool isValid () const
 
- Public Member Functions inherited from BALL::UnaryProcessor< Composite >
 UnaryProcessor ()
 
 UnaryProcessor (const UnaryProcessor &)
 
virtual ~UnaryProcessor ()
 
virtual Processor::Result operator() (Composite &)
 

Static Public Attributes

Enums and Constants
static const char * PROPERTY__SHIFT
 
static const char * PROPERTY__EXPERIMENTAL__SHIFT
 

Protected Attributes

String module_name_
 
Parametersparameters_
 
bool valid_
 

Additional Inherited Members

- Public Types inherited from BALL::UnaryFunctor< Composite, Processor::Result >
typedef Processor::Result result_type
 
typedef Composite argument_type
 
typedef Compositeargument_reference
 
typedef const Compositeconst_argument_reference
 
typedef Compositeargument_pointer
 
typedef const Compositeconst_argument_pointer
 

Detailed Description

A single contribution of a NMR shift model. NMR shift models typically consist of a number of different contributions (e.g. ring current, ansisotopy, etc.). Each of these contributions is implemented in a ShiftModule. Several of these ShiftModules can then be combined to a complete ShiftModel . Since ShiftModules are derived from UnaryProcessor , they can be applied to arbitrary kernel data structures.

Caveat: The shifts are usually stored in a property of the corresponding atom. Applying the same processor multiply will give incorrect results, as the ShiftModules {add} their shift contribution. Before applying a ShiftModule, these properties can be reset to zero by applying a ClearShiftProcessor .

Definition at line 41 of file shiftModule.h.

Constructor & Destructor Documentation

BALL::ShiftModule::ShiftModule ( )

Default Constructor

BALL::ShiftModule::ShiftModule ( Parameters parameters,
const String name = "" 
)

Detailed constructor

BALL::ShiftModule::ShiftModule ( const ShiftModule module)

Copy constructor

virtual BALL::ShiftModule::~ShiftModule ( )
virtual

Destructor

Member Function Documentation

virtual void BALL::ShiftModule::clear ( )
virtual

Clear method. Clear the name and the pointer to the parameters.

Reimplemented in BALL::ShiftModel, BALL::ShiftModel2D, and BALL::ShiftModel1D.

virtual bool BALL::ShiftModule::finish ( )
virtual
const String& BALL::ShiftModule::getName ( ) const

Return the module name

const Parameters* BALL::ShiftModule::getParameters ( ) const

Return a pointer to the parameters

virtual void BALL::ShiftModule::init ( )
virtual

Parameter initalization. Use this method to implement the extraction and initialization of the module's parameters. init is called by ShiftModel as soon as the ShiftModule is constructed and parameters and name are assigned.

All implementations in derived classes should set the valid_ flag to true if the initialization was successful and to false otherwise.

Reimplemented in BALL::AnisotropyShiftProcessor, BALL::EmpiricalHSShiftProcessor, BALL::HBondShiftProcessor, BALL::JohnsonBoveyShiftProcessor, BALL::CreateSpectrumProcessor, BALL::EFShiftProcessor, BALL::HaighMallionShiftProcessor, and BALL::RandomCoilShiftProcessor.

bool BALL::ShiftModule::isValid ( ) const

Return the module state. The module is valid if init was executed successfully.

Returns
the module state
const ShiftModule& BALL::ShiftModule::operator= ( const ShiftModule module)

Assignment operator

void BALL::ShiftModule::setName ( const String name)

Set the modules name

void BALL::ShiftModule::setParameters ( Parameters parameters)

Set the parameters. After the assignment, the state of the module is {invalid}, so it is required to run init .

Parameters
parametersthe new parameters
See Also
isValid
virtual bool BALL::ShiftModule::start ( )
virtual

Member Data Documentation

String BALL::ShiftModule::module_name_
protected

Definition at line 165 of file shiftModule.h.

Parameters* BALL::ShiftModule::parameters_
protected

Definition at line 169 of file shiftModule.h.

const char* BALL::ShiftModule::PROPERTY__EXPERIMENTAL__SHIFT
static

Definition at line 59 of file shiftModule.h.

const char* BALL::ShiftModule::PROPERTY__SHIFT
static

Named property to store the shift values. Use this string constant to access the shift values stored in the single atoms.

Example: atom.setProperty(ShiftModule::PROPERTY__SHIFT, 0.0);

Definition at line 58 of file shiftModule.h.

bool BALL::ShiftModule::valid_
protected

Definition at line 175 of file shiftModule.h.