Mass++ Common Libraries v2.7.5
 All Classes Namespaces Files Functions Variables Enumerations Macros
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
kome::objects::PeaksManager Class Reference

peaks management class More...

#include <PeaksManager.h>

Inheritance diagram for kome::objects::PeaksManager:
Inheritance graph
[legend]
Collaboration diagram for kome::objects::PeaksManager:
Collaboration graph
[legend]

Public Member Functions

PeaksgetPeaks (Spectrum *spec)
 gets peaks of specified spectrum More...
 
PeaksgetPeaks (Chromatogram *chrom)
 gets peaks of specified chromatogram More...
 
Peaks2DgetPeaks (DataGroupNode *group)
 gets peak of specified spectrum group More...
 
PeakscreatePeaks (Spectrum *spec)
 creates peaks of specified spectrum More...
 
PeakscreatePeaks (Chromatogram *chrom)
 creates peaks of specified chromatogram More...
 
Peaks2DcreatePeaks (DataGroupNode *group)
 creates peaks of specified spectrum group More...
 
bool hasPeaks (Spectrum *spec)
 judges whether peaks object of specified spectrum exists More...
 
bool hasPeaks (Chromatogram *chrom)
 judges whether peaks object of specified chromatogram exists More...
 
bool hasPeaks (DataGroupNode *group)
 judges whether peaks object of specified spectrum group exists More...
 
void deletePeaks (Spectrum *spec)
 deletes peaks of specified spectrum More...
 
void deletePeaks (Chromatogram *chrom)
 deletes peaks of specified chromatogram More...
 
void deletePeaks (DataGroupNode *group)
 deletes peaks of specified spectrum group More...
 
void updatePeaks (Spectrum &spec, Peaks *peaks, std::vector< PeakElement > &addPeaks)
 update peaks More...
 

Static Public Member Functions

static PeaksManagergetInstance ()
 get peaks manager object (This is the only object.) More...
 
- Static Public Member Functions inherited from kome::objects::DataManager
static void openSample (Sample *sample)
 This method is called when a sample is opened. More...
 
static void closeSample (Sample *sample, const bool deleting)
 This method is called when a sample is closed. More...
 
static void openSpectrum (Spectrum *spec)
 This method is called when a spectrum is opened. More...
 
static void closeSpectrum (Spectrum *spec, const bool deleting)
 This method is called when a spectrum is closed. More...
 
static void openChromatogram (Chromatogram *chrom)
 This method is called when a chromaogram is opened. More...
 
static void closeChromatogram (Chromatogram *chrom, const bool deleting)
 This method is called when a chromatogram is closed. More...
 
static void openDataMap (DataMapInfo *dataMap)
 This method is called when a data map is opened. More...
 
static void closeDataMap (DataMapInfo *dataMap, const bool deleting)
 This method is called when a data map is closed. More...
 

Protected Member Functions

 PeaksManager ()
 constructor
 
virtual ~PeaksManager ()
 destructor
 
virtual void onCloseSample (Sample *sample, const bool deleting)
 This method is called when a sample is closed. (override method) More...
 
- Protected Member Functions inherited from kome::objects::DefaultDataManager
 DefaultDataManager ()
 constructor
 
virtual ~DefaultDataManager ()
 destructor
 
virtual void onOpenSample (Sample *sample)
 This method is called when a sample is opened. (override method) More...
 
virtual void onOpenSpectrum (Spectrum *spec)
 This method is called when a spectrum is opened. (override method) More...
 
virtual void onCloseSpectrum (Spectrum *spec, const bool deleting)
 This method is called when a spectrum is closed. (override method) More...
 
virtual void onOpenChromatogram (Chromatogram *chrom)
 This method is called when a chromatogram is opened. (override method) More...
 
virtual void onCloseChromatogram (Chromatogram *chrom, const bool deleting)
 This method is called when a chromatogram is closed. (override method) More...
 
virtual void onOpenDataMap (DataMapInfo *dataMap)
 This method is called when a data map is opened. (override method) More...
 
virtual void onCloseDataMap (DataMapInfo *dataMap, const bool deleting)
 This method is called when a data map is closed. (override method) More...
 
- Protected Member Functions inherited from kome::objects::DataManager
 DataManager ()
 constructor
 
virtual ~DataManager ()
 destructor
 

Protected Attributes

std::map< Spectrum *, Peaksm_specPeaksMap
 
std::map< Chromatogram *, Peaksm_chromPeaksMap
 
std::map< DataGroupNode
*, Peaks2D
m_2dPeaksMap
 
- Protected Attributes inherited from kome::objects::DataManager
int m_order
 

Additional Inherited Members

- Static Protected Member Functions inherited from kome::objects::DataManager
static bool lessManager (DataManager *dm0, DataManager *dm1)
 conmapred data managers to sort More...
 
static void sortDataManagers ()
 sorts data managers
 
- Static Protected Attributes inherited from kome::objects::DataManager
static std::vector< DataManager * > m_dataMgrs
 
static bool m_sorted = true
 

Detailed Description

peaks management class

Definition at line 41 of file PeaksManager.h.

Member Function Documentation

Peaks * kome::objects::PeaksManager::createPeaks ( Spectrum spec)

creates peaks of specified spectrum

Parameters
[in]specspectrum
Returns
peaks object

Definition at line 85 of file PeaksManager.cpp.

85  {
86  // check the parameter
87  if( spec == NULL ) {
88  return NULL;
89  }
90 
91  // create peaks
92  Peaks* peaks = getPeaks( spec );
93  if( peaks == NULL ) {
94  peaks = &( m_specPeaksMap[ spec ] );
95  }
96  else {
97  peaks->clearPoints();
98  }
99 
100  // set precursor
101  peaks->setPrecursor( spec->getPrecursor() );
102 
103  return peaks;
104 }
double getPrecursor(const int stage)
gets precursor
Definition: Spectrum.cpp:683
void setPrecursor(const double precursor)
sets precursor
Definition: Peaks.cpp:184
Peaks * getPeaks(Spectrum *spec)
gets peaks of specified spectrum
void clearPoints()
clear all data points
Definition: XYData.cpp:137
#define NULL
Definition: CoreMacros.h:18
std::map< Spectrum *, Peaks > m_specPeaksMap
Definition: PeaksManager.h:57
peaks information class
Definition: Peaks.h:35

Here is the call graph for this function:

Peaks * kome::objects::PeaksManager::createPeaks ( Chromatogram chrom)

creates peaks of specified chromatogram

Parameters
[in]chromchromatogram
Returns
peaks object

Definition at line 107 of file PeaksManager.cpp.

107  {
108  // check the parameter
109  if( chrom == NULL ) {
110  return NULL;
111  }
112 
113  // create peaks
114  Peaks* peaks = getPeaks( chrom );
115  if( peaks == NULL ) {
116  peaks = &( m_chromPeaksMap[ chrom ] );
117  }
118  else {
119  peaks->clearPoints();
120  }
121 
122  return peaks;
123 }
Peaks * getPeaks(Spectrum *spec)
gets peaks of specified spectrum
std::map< Chromatogram *, Peaks > m_chromPeaksMap
Definition: PeaksManager.h:60
void clearPoints()
clear all data points
Definition: XYData.cpp:137
#define NULL
Definition: CoreMacros.h:18
peaks information class
Definition: Peaks.h:35

Here is the call graph for this function:

Peaks2D * kome::objects::PeaksManager::createPeaks ( DataGroupNode group)

creates peaks of specified spectrum group

Parameters
[in]groupspectrum group
Returns
peak object

Definition at line 126 of file PeaksManager.cpp.

126  {
127  // check the parameter
128  if( group == NULL ) {
129  return NULL;
130  }
131 
132  // create peaks
133  Peaks2D* peaks = getPeaks( group );
134  if( peaks == NULL ) {
135  peaks = &( m_2dPeaksMap[ group ] );
136  }
137  else {
138  peaks->clearClusters();
139  peaks->clearPeaks();
140  }
141 
142  return peaks;
143 }
Peaks * getPeaks(Spectrum *spec)
gets peaks of specified spectrum
std::map< DataGroupNode *, Peaks2D > m_2dPeaksMap
Definition: PeaksManager.h:63
#define NULL
Definition: CoreMacros.h:18
2-dimentional peaks
Definition: Peaks2D.h:32
void clearClusters()
clears clusters
Definition: Peaks2D.cpp:269
void clearPeaks()
clears peaks
Definition: Peaks2D.cpp:207

Here is the call graph for this function:

void kome::objects::PeaksManager::deletePeaks ( Spectrum spec)

deletes peaks of specified spectrum

Parameters
[in]specspectrum

Definition at line 161 of file PeaksManager.cpp.

161  {
162  if( m_specPeaksMap.find( spec ) != m_specPeaksMap.end() ) {
163  m_specPeaksMap.erase( spec );
164  }
165 }
std::map< Spectrum *, Peaks > m_specPeaksMap
Definition: PeaksManager.h:57
void kome::objects::PeaksManager::deletePeaks ( Chromatogram chrom)

deletes peaks of specified chromatogram

Parameters
[in]chromchromatogram

Definition at line 168 of file PeaksManager.cpp.

168  {
169  if( m_chromPeaksMap.find( chrom ) != m_chromPeaksMap.end() ) {
170  m_chromPeaksMap.erase( chrom );
171  }
172 }
std::map< Chromatogram *, Peaks > m_chromPeaksMap
Definition: PeaksManager.h:60
void kome::objects::PeaksManager::deletePeaks ( DataGroupNode group)

deletes peaks of specified spectrum group

Parameters
[in]groupspectrum group

Definition at line 175 of file PeaksManager.cpp.

175  {
176  if( m_2dPeaksMap.find( group ) != m_2dPeaksMap.end() ) {
177  m_2dPeaksMap.erase( group );
178  }
179 }
std::map< DataGroupNode *, Peaks2D > m_2dPeaksMap
Definition: PeaksManager.h:63
static PeaksManager & kome::objects::PeaksManager::getInstance ( )
static

get peaks manager object (This is the only object.)

Returns
peaks manager object

Definition at line 263 of file PeaksManager.cpp.

263  {
264  // create object (This is the only object.)
265  static PeaksManager mgr;
266 
267  return mgr;
268 }
peaks management class
Definition: PeaksManager.h:41
Peaks * kome::objects::PeaksManager::getPeaks ( Spectrum spec)

gets peaks of specified spectrum

Parameters
[in]specspectrum
Returns
peaks object (If NULL, peaks object is not created yet.)

Definition at line 43 of file PeaksManager.cpp.

43  {
44  // check the parameter
45  if( spec == NULL ) {
46  return NULL;
47  }
48 
49  // get peaks
50  if( m_specPeaksMap.find( spec ) == m_specPeaksMap.end() ) {
51  return NULL;
52  }
53  return &( m_specPeaksMap[ spec ] );
54 }
#define NULL
Definition: CoreMacros.h:18
std::map< Spectrum *, Peaks > m_specPeaksMap
Definition: PeaksManager.h:57
Peaks * kome::objects::PeaksManager::getPeaks ( Chromatogram chrom)

gets peaks of specified chromatogram

Parameters
[in]chromchromatogram
Returns
peaks object (If NULL, peaks object is not created yet.)

Definition at line 57 of file PeaksManager.cpp.

57  {
58  // check the parameter
59  if( chrom == NULL ) {
60  return NULL;
61  }
62 
63  // get peaks
64  if( m_chromPeaksMap.find( chrom ) == m_chromPeaksMap.end() ) {
65  return NULL;
66  }
67  return &( m_chromPeaksMap[ chrom ] );
68 }
std::map< Chromatogram *, Peaks > m_chromPeaksMap
Definition: PeaksManager.h:60
#define NULL
Definition: CoreMacros.h:18
Peaks2D * kome::objects::PeaksManager::getPeaks ( DataGroupNode group)

gets peak of specified spectrum group

Parameters
[in]groupspectrum group
Returns
peaks object (If NULL, peaks object is not created yet.)

Definition at line 71 of file PeaksManager.cpp.

71  {
72  // check the parameter
73  if( group == NULL ) {
74  return NULL;
75  }
76 
77  // get peaks
78  if( m_2dPeaksMap.find( group ) == m_2dPeaksMap.end() ) {
79  return NULL;
80  }
81  return &( m_2dPeaksMap[ group ] );
82 }
std::map< DataGroupNode *, Peaks2D > m_2dPeaksMap
Definition: PeaksManager.h:63
#define NULL
Definition: CoreMacros.h:18
bool kome::objects::PeaksManager::hasPeaks ( Spectrum spec)

judges whether peaks object of specified spectrum exists

Parameters
[in]specspectrum
Returns
If true, peaks object of specified spectrum exists.

Definition at line 146 of file PeaksManager.cpp.

146  {
147  return ( m_specPeaksMap.find( spec ) != m_specPeaksMap.end() );
148 }
std::map< Spectrum *, Peaks > m_specPeaksMap
Definition: PeaksManager.h:57
bool kome::objects::PeaksManager::hasPeaks ( Chromatogram chrom)

judges whether peaks object of specified chromatogram exists

Parameters
[in]chromchromatogram
Returns
If true, peaks object of specified chromatogtram exists.

Definition at line 151 of file PeaksManager.cpp.

151  {
152  return ( m_chromPeaksMap.find( chrom ) != m_chromPeaksMap.end() );
153 }
std::map< Chromatogram *, Peaks > m_chromPeaksMap
Definition: PeaksManager.h:60
bool kome::objects::PeaksManager::hasPeaks ( DataGroupNode group)

judges whether peaks object of specified spectrum group exists

Parameters
[in]groupspectrum group
Returns
If true, peaks object of specified spectrum group exists.

Definition at line 156 of file PeaksManager.cpp.

156  {
157  return ( m_2dPeaksMap.find( group ) != m_2dPeaksMap.end() );
158 }
std::map< DataGroupNode *, Peaks2D > m_2dPeaksMap
Definition: PeaksManager.h:63
void kome::objects::PeaksManager::onCloseSample ( Sample sample,
const bool  deleting 
)
protectedvirtual

This method is called when a sample is closed. (override method)

Parameters
[in]samplesample object to be closed
[in]deletingIf true, the specified object is being deleted now.

Reimplemented from kome::objects::DefaultDataManager.

Definition at line 182 of file PeaksManager.cpp.

182  {
183  // get spectra
184  std::vector< Spectrum* > spectra;
185  for( std::map< Spectrum*, Peaks >::iterator it = m_specPeaksMap.begin();
186  it != m_specPeaksMap.end(); it++ ) {
187  // spectrum
188  Spectrum* spec = (*it).first;
189  if( spec->getSample() == sample ) {
190  spectra.push_back( spec );
191  }
192  }
193 
194  // erase spectrum peaks
195  for( unsigned int i = 0; i < spectra.size(); i++ ) {
196  Spectrum* spec = spectra[ i ];
197  m_specPeaksMap[ spec ].clearPoints();
198  m_specPeaksMap.erase( spec );
199  }
200 
201  // get chromatograms
202  std::vector< Chromatogram* > chroms;
203  for( std::map< Chromatogram*, Peaks >::iterator it = m_chromPeaksMap.begin();
204  it != m_chromPeaksMap.end(); it++ ) {
205  // chromatogram
206  Chromatogram* chrom = (*it).first;
207  if( chrom->getSample() == sample ) {
208  chroms.push_back( chrom );
209  }
210  }
211 
212  // erase chromatogram peaks
213  for( unsigned int i = 0; i < chroms.size(); i++ ) {
214  Chromatogram* chrom = chroms[ i ];
215  m_chromPeaksMap[ chrom ].clearPoints();
216  m_chromPeaksMap.erase( chrom );
217  }
218 
219  // get spectrum groups
220  std::vector< DataGroupNode* > groups;
221  for( std::map< DataGroupNode*, Peaks2D >::iterator it = m_2dPeaksMap.begin();
222  it != m_2dPeaksMap.end(); it++ ) {
223  // spectrum group
224  DataGroupNode* group = (*it).first;
225  if( group->getSample() == sample ) {
226  groups.push_back( group );
227  }
228  }
229 
230  // erase 2d peaks
231  for( unsigned int i = 0; i < groups.size(); i++ ) {
232  DataGroupNode* group = groups[ i ];
233 
234  Peaks2D& peaks = m_2dPeaksMap[ group ];
235  peaks.clearClusters();
236  peaks.clearPeaks();
237 
238  m_2dPeaksMap.erase( group );
239  }
240 }
group of spectrum management class
Definition: DataGroupNode.h:33
Sample * getSample()
gets the sample that has this spectrum
Definition: Spectrum.cpp:108
Sample * getSample()
gets sample
std::map< Chromatogram *, Peaks > m_chromPeaksMap
Definition: PeaksManager.h:60
std::map< DataGroupNode *, Peaks2D > m_2dPeaksMap
Definition: PeaksManager.h:63
std::map< Spectrum *, Peaks > m_specPeaksMap
Definition: PeaksManager.h:57
2-dimentional peaks
Definition: Peaks2D.h:32
spectrum information management class
Definition: Spectrum.h:30
Sample * getSample()
gets sample
Definition: DataSet.cpp:49
void clearClusters()
clears clusters
Definition: Peaks2D.cpp:269
void clearPeaks()
clears peaks
Definition: Peaks2D.cpp:207
chromatogram information management class
Definition: Chromatogram.h:33

Here is the call graph for this function:

void kome::objects::PeaksManager::updatePeaks ( Spectrum spec,
Peaks peaks,
std::vector< PeakElement > &  addPeaks 
)

update peaks

Parameters
[in]specspectrum object
[in]peakspeaks object
[in]addPeakspeak element object to add

Definition at line 243 of file PeaksManager.cpp.

243  {
244  if( peaks == NULL ) {
245  peaks = createPeaks( &spec );
246  }
247  else {
248  peaks->clearPoints();
249  }
250 
251  for( unsigned int i=0; i < addPeaks.size(); i++ ){
252  PeakElement* peakElement = peaks->createPeak( addPeaks[i].getX(), addPeaks[i].getY() );
253  if( peakElement != NULL ){
254  peakElement->setLeft( addPeaks[i].getLeftX(), addPeaks[i].getLeftY() );
255  peakElement->setRight( addPeaks[i].getRightX(), addPeaks[i].getRightY() );
256  peakElement->setApex( addPeaks[i].getApexX(), addPeaks[i].getApexY() );
257  peakElement->setId( addPeaks[i].getId() );
258  }
259  }
260 }
void setRight(const double x, const double y)
sets peak right
Peaks * createPeaks(Spectrum *spec)
creates peaks of specified spectrum
void clearPoints()
clear all data points
Definition: XYData.cpp:137
#define NULL
Definition: CoreMacros.h:18
void setId(int id)
sets peak ID
void setApex(const double x, const double y)
sets peak apex
void setLeft(const double x, const double y)
sets peak left
PeakElement * createPeak(const double x, const double y)
creates peak
Definition: Peaks.cpp:353

Here is the call graph for this function:

Member Data Documentation

std::map< DataGroupNode*, Peaks2D > kome::objects::PeaksManager::m_2dPeaksMap
protected

2D peaks

Definition at line 63 of file PeaksManager.h.

std::map< Chromatogram*, Peaks > kome::objects::PeaksManager::m_chromPeaksMap
protected

chromatogram peaks

Definition at line 60 of file PeaksManager.h.

std::map< Spectrum*, Peaks > kome::objects::PeaksManager::m_specPeaksMap
protected

spectrum peaks

Definition at line 57 of file PeaksManager.h.


The documentation for this class was generated from the following files: