Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes

ProductModel< 2 > Class Template Reference

The class template is only implemented for D=2 because we use Peak2D here. More...

#include <OpenMS/TRANSFORMATIONS/FEATUREFINDER/ProductModel.h>

Inheritance diagram for ProductModel< 2 >:
BaseModel< 2 > DefaultParamHandler

List of all members.

Public Types

enum  { D = 2 }
 

Number of dimensions.

More...
typedef DoubleReal IntensityType
typedef DPosition< D > PositionType
typedef BaseModel< D >::SamplesType SamplesType

Public Member Functions

 ProductModel ()
 Default constructor.
 ProductModel (const ProductModel &source)
 copy constructor
virtual ~ProductModel ()
 destructor
virtual ProductModel & operator= (const ProductModel &source)
 assignment operator
IntensityType getIntensity (const PositionType &pos) const
 intensity equals product of intensities in each dimension
ProductModel & setModel (UInt dim, BaseModel< 1 > *dist)
 set model dist for dimension dim
BaseModel< 1 > * getModel (UInt dim) const
IntensityType getScale () const
 return the intensity scaling factor
void setScale (IntensityType scale)
 set the intensity scaling factor
void getSamples (SamplesType &cont) const
 get reasonable set of samples from the model (i.e. for printing)

Static Public Member Functions

static BaseModel< D > * create ()
 create new ProductModel object (needed by Factory)
static const String getProductName ()
 Returns the name of the model.

Protected Member Functions

void updateMembers_ ()
 This method is used to update extra member variables at the end of the setParameters() method.

Protected Attributes

std::vector< BaseModel< 1 > * > distributions_
IntensityType scale_

Detailed Description

template<>
class OpenMS::ProductModel< 2 >

The class template is only implemented for D=2 because we use Peak2D here.


Member Typedef Documentation

Reimplemented from BaseModel< 2 >.

typedef DPosition<D> PositionType

Reimplemented from BaseModel< 2 >.

Reimplemented from BaseModel< 2 >.


Member Enumeration Documentation

anonymous enum

Number of dimensions.

Enumerator:
D 

Constructor & Destructor Documentation

ProductModel (  )  [inline]

Default constructor.

References Peak2D::shortDimensionName().

ProductModel ( const ProductModel< 2 > &  source  )  [inline]

copy constructor

References ModelDescription< D >::createModel().

virtual ~ProductModel (  )  [inline, virtual]

destructor


Member Function Documentation

static BaseModel<D>* create (  )  [inline, static]

create new ProductModel object (needed by Factory)

IntensityType getIntensity ( const PositionType pos  )  const [inline, virtual]

intensity equals product of intensities in each dimension

Implements BaseModel< 2 >.

Referenced by ModelFitter< PeakType, FeatureType >::evaluate_(), and ModelFitter< PeakType, FeatureType >::fit().

BaseModel<1>* getModel ( UInt  dim  )  const [inline]
static const String getProductName (  )  [inline, static]

Returns the name of the model.

void getSamples ( SamplesType cont  )  const [inline, virtual]

get reasonable set of samples from the model (i.e. for printing)

Implements BaseModel< 2 >.

IntensityType getScale (  )  const [inline]

return the intensity scaling factor

virtual ProductModel& operator= ( const ProductModel< 2 > &  source  )  [inline, virtual]

assignment operator

References ModelDescription< D >::createModel().

ProductModel& setModel ( UInt  dim,
BaseModel< 1 > *  dist 
) [inline]

set model dist for dimension dim

dist is supposed to be allocated by new because it will be freed if ProductModel is destroyed or the model for that dimensions changes. For that reason no model dist should be assigned to multiple ProductModels.
ProductModel parameters are set when calling ProductModel::getParameters().

References OPENMS_PRECONDITION, and Peak2D::shortDimensionName().

Referenced by ModelFitter< PeakType, FeatureType >::fit(), ModelFitter< PeakType, FeatureType >::fitMZLoop_(), and FeatureFinderAlgorithmMRM< PeakType, FeatureType >::run().

void setScale ( IntensityType  scale  )  [inline]

set the intensity scaling factor

Referenced by ModelFitter< PeakType, FeatureType >::fit().

void updateMembers_ (  )  [inline, protected, virtual]

This method is used to update extra member variables at the end of the setParameters() method.

Also call it at the end of the derived classes' copy constructor and assignment operator.

The default implementation is empty.

Reimplemented from BaseModel< 2 >.

References Peak2D::shortDimensionName().


Member Data Documentation

std::vector<BaseModel<1> *> distributions_ [protected]
IntensityType scale_ [protected]

OpenMS / TOPP release 1.10.0 Documentation generated on Thu Mar 7 2013 09:42:57 using doxygen 1.7.1