BALL::ShiftModule Class Reference
[Shift model classes]

#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::Experiment< PeakListType > BALL::HaighMallionShiftProcessor BALL::HBondShiftProcessor BALL::JohnsonBoveyShiftProcessor BALL::RandomCoilShiftProcessor BALL::ShiftModel BALL::Experiment< PeakList1D >

List of all members.


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

Static Public Attributes

Enums and Constants
static const char * PROPERTY__SHIFT

Protected Attributes

String module_name_
Parametersparameters_
bool valid_

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 .

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.

virtual bool BALL::ShiftModule::finish (  )  [virtual]

Finish method. This method aborts, if the module is not correctly initialized.

See also:
isValid

Reimplemented from BALL::UnaryProcessor< Composite >.

Reimplemented in BALL::AnisotropyShiftProcessor, BALL::EFShiftProcessor, BALL::HaighMallionShiftProcessor, BALL::HBondShiftProcessor, BALL::JohnsonBoveyShiftProcessor, and BALL::ShiftModel.

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::CreateSpectrumProcessor, BALL::EFShiftProcessor, BALL::HaighMallionShiftProcessor, BALL::HBondShiftProcessor, BALL::JohnsonBoveyShiftProcessor, 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

Reimplemented in BALL::ShiftModel.

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:
parameters the new parameters
See also:
isValid
virtual bool BALL::ShiftModule::start (  )  [virtual]

Start method. This method aborts, if the module is not correctly initialized.

See also:
isValid

Reimplemented from BALL::UnaryProcessor< Composite >.

Reimplemented in BALL::CreateSpectrumProcessor, BALL::EFShiftProcessor, BALL::SimpleExperiment1D, BALL::HBondShiftProcessor, BALL::JohnsonBoveyShiftProcessor, and BALL::ShiftModel.


Member Data Documentation

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);

Reimplemented in BALL::ShiftModel.