36 #ifndef OPENMS_CHEMISTRY_MASSDECOMPOSITION_IMS_IMSALPHABET_H 37 #define OPENMS_CHEMISTRY_MASSDECOMPOSITION_IMS_IMSALPHABET_H 123 elements_(alphabet.elements_)
133 return elements_.size();
145 return elements_[index];
158 void setElement(
const name_type & name, mass_type mass,
bool forced =
false);
166 bool erase(
const name_type & name);
176 const element_type & getElement(
const name_type & name)
const;
184 const name_type & getName(size_type index)
const;
195 mass_type getMass(
const name_type & name)
const;
204 mass_type getMass(size_type index)
const;
212 masses_type getMasses(size_type isotope_index = 0)
const;
219 masses_type getAverageMasses()
const;
228 bool hasName(
const name_type & name)
const;
241 push_back(element_type(name, value));
251 elements_.push_back(element);
267 virtual void sortByNames();
275 virtual void sortByValues();
287 virtual void load(
const std::string & fname);
322 const element_type & el2)
const 343 #endif // OPENMS_CHEMISTRY_MASSDECOMPOSITION_IMS_ALPHABET_H std::vector< name_type > name_container
Definition: IMSAlphabet.h:93
size_type size() const
Definition: IMSAlphabet.h:131
void clear()
Definition: IMSAlphabet.h:257
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47
container::size_type size_type
Definition: IMSAlphabet.h:90
virtual ~IMSAlphabet()
Definition: IMSAlphabet.h:307
element_type::name_type name_type
Definition: IMSAlphabet.h:88
container elements_
Definition: IMSAlphabet.h:313
mass_container::const_iterator const_mass_iterator
Definition: IMSAlphabet.h:98
void push_back(const name_type &name, mass_type value)
Definition: IMSAlphabet.h:239
Represents a chemical atom with name and isotope distribution.
Definition: IMSElement.h:59
IMSAlphabet(const container &elements)
Definition: IMSAlphabet.h:112
IMSElement element_type
Definition: IMSAlphabet.h:86
mass_container::iterator mass_iterator
Definition: IMSAlphabet.h:97
name_container::iterator name_iterator
Definition: IMSAlphabet.h:94
mass_type getMass(size_type index=0) const
Definition: IMSElement.h:173
Private class-functor to sort out elements in mass ascending order.
Definition: IMSAlphabet.h:318
IMSAlphabet()
Definition: IMSAlphabet.h:104
std::vector< mass_type > masses_type
Definition: IMSAlphabet.h:99
name_container::const_iterator const_name_iterator
Definition: IMSAlphabet.h:95
std::vector< mass_type > mass_container
Definition: IMSAlphabet.h:96
element_type::mass_type mass_type
Definition: IMSAlphabet.h:87
container::iterator iterator
Definition: IMSAlphabet.h:91
IMSAlphabet(const IMSAlphabet &alphabet)
Definition: IMSAlphabet.h:122
Holds an indexed list of bio-chemical elements.
Definition: IMSAlphabet.h:82
container::const_iterator const_iterator
Definition: IMSAlphabet.h:92
std::string name_type
Type of element's name.
Definition: IMSElement.h:63
bool operator()(const element_type &el1, const element_type &el2) const
Definition: IMSAlphabet.h:321
std::vector< element_type > container
Definition: IMSAlphabet.h:89
const element_type & getElement(size_type index) const
Definition: IMSAlphabet.h:143
void push_back(const element_type &element)
Definition: IMSAlphabet.h:249
std::ostream & operator<<(std::ostream &os, const IMSAlphabet &alphabet)