ISOSPEC_ISOLAYEREDGENERATORTEMPLATE(3)
πΈ IsoSpec::IsoLayeredGeneratorTemplate< MarginalType > πΈ
okay bestie, welcome to the IsoSpec Library Functions Manual π this whole page is about one absolute icon of a class template, and yes she is very good at her job. grab a boba, we're going in π§β¨
β¨ NAME β¨
IsoSpec::IsoLayeredGeneratorTemplate< MarginalType > β that's her. that's the whole name. no cap π
π¦ SYNOPSIS π¦
she Inherits IsoSpec::IsoGenerator. so everything IsoGenerator can do, she can do too (and honestly, she does it cuter π
).
π Public Member Functions π
IsoLayeredGeneratorTemplate(const IsoLayeredGeneratorTemplate &other)=deleteβ nope, deleted, we do not copy her, she's one of a kind πIsoLayeredGeneratorTemplate & operator=(const IsoLayeredGeneratorTemplate &other)=deleteβ also deleted. no assignment. she doesn't do duplicates, periodt β¨void get_conf_signature(int *space) const override finalβ Write the signature of configuration into target memory location. It must be large enough to accomodate it. (translating: bestie, YOU gotta make surespaceis big enough, she will not check for you π)double get_currentLThreshold() constβ hands you the current L-threshold, fr frIsoLayeredGeneratorTemplate(Iso &&iso, int _tabSize=1000, int _hashSize=1000, bool reorder_marginals=true, double t_prob_hint=0.99)β the main constructor, and look at those defaults, she comes pre-styled πISOSPEC_FORCE_INLINE bool advanceToNextConfiguration() override finalβ Advance to the next, not yet visited, most probable isotopologue.ISOSPEC_FORCE_INLINE bool advanceToNextConfigurationWithinLayer()β same vibe but she stays inside the layer π¦ISOSPEC_FORCE_INLINE double lprob() const override finalβ Get the log-probability of the current isotopologue.ISOSPEC_FORCE_INLINE double mass() const override finalβ Get the mass of the current isotopologue.ISOSPEC_FORCE_INLINE double prob() const override finalβ Get the probability of the current isotopologue.void terminate_search()β Block the subsequent search of isotopologues. she said enough. πISOSPEC_FORCE_INLINE void recalc(int idx)β Recalculate the current partial log-probabilities, masses, and probabilities.bool nextLayer(double offset)β hop to the next layer, with anoffsetvoid get_conf_by_indexes(int *space) constβ grab the configuration by its indexes β¨
π Public Member Functions inherited from IsoSpec::IsoGenerator π
IsoGenerator(Iso &&iso, bool alloc_partials=true)β Move constructor.virtual ~IsoGenerator()β Destructor.
π Public Member Functions inherited from IsoSpec::Iso π
Iso(int _dimNumber, const int *_isotopeNumbers, const int *_atomCounts, const double *_isotopeMasses, const double *_isotopeProbabilities)β General constructror.Iso(int _dimNumber, const int *_isotopeNumbers, const int *_atomCounts, const double *const *_isotopeMasses, const double *const *_isotopeProbabilities)β the pointer-to-const-pointer glow-up version of the same thingIso(const char *formula, bool use_nominal_masses=false)β Constructor from the formula object.Iso(const std::string &formula, bool use_nominal_masses=false)β Constructor from C++std::stringchemical formula.Iso(Iso &&other)β The move constructor.Iso & operator=(const Iso &other)=deleteβ deleted. no copy-assign. she's not sharing π€Iso(const Iso &other, bool fullcopy)β The copy constructor.virtual ~Iso()β Destructor.double getLightestPeakMass() constβ Get the mass of the lightest peak in the isotopic distribution.double getHeaviestPeakMass() constβ Get the mass of the heaviest peak in the isotopic distribution.double getMonoisotopicPeakMass() constβ the monoisotopic one. the main character πdouble getModeLProb() constβ Get the log-probability of the mode-configuration (if there are many modes, they share this value).double getUnlikeliestPeakLProb() constβ Get the logprobability of the least probable subisotopologue. (yes she said logprobability, one word, she's confident, let her live π )double getModeMass() constβ Get the mass of the mode-configuration (if there are many modes, it is undefined which one will be selected). undefined!! so don't come for her if you get a different mode πdouble getTheoreticalAverageMass() constβ Get the theoretical average mass of the molecule.double variance() constβ Get the theoretical variance of the distribution.double stddev() constβ Get the standard deviation of the theoretical distribution.int getDimNumber() constβ Get the number of elements in the chemical formula of the molecule.int getAllDim() constβ Get the total number of isotopes of elements present in a chemical formula.void addElement(int atomCount, int noIsotopes, const double *isotopeMasses, const double *isotopeProbabilities)β Add an element to the molecule. Note: this method can only be used BEFOREIsois used to construct anIsoGeneratorinstance. like, BEFORE. that's a hard rule, not a suggestion π¨void saveMarginalLogSizeEstimates(double *priorities, double target_total_prob) constβ Save estimates of logarithms of target sizes of marginals using Gaussian approximation into argument array. Arrayprioritiesmust have length equal todimNumber.
π Additional Inherited Members π
β Static Public Member Functions inherited from IsoSpec::Iso β
static Iso FromFASTA(const char *fasta, bool use_nominal_masses=false, bool add_water=true)β Constructor (named) from aminoacid FASTA sequence as C string.static Iso FromFASTA(const std::string &fasta, bool use_nominal_masses=false, bool add_water=true)β Constructor (named) from aminoacid FASTA sequence as C++std::string. See above for details.
π«Ά Public Attributes inherited from IsoSpec::IsoGenerator π«Ά
const double mode_lprobβ it'sconst. don't touch. π
π§ Protected Member Functions inherited from IsoSpec::Iso π§
bool doMarginalsNeedSorting() constβ protected, so it's between her and her subclasses, mind your business π
πΈ Protected Attributes inherited from IsoSpec::IsoGenerator πΈ
double * partialLProbsdouble * partialMassesdouble * partialProbs
π Protected Attributes inherited from IsoSpec::Iso π
int dimNumberint * isotopeNumbersint * atomCountsunsigned int confSizeint allDimMarginal ** marginals
π Detailed Description π
template<typename MarginalType>
class IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >"
Definition at line 460 of file isoSpec++.h. β¨
π§ Constructor & Destructor Documentation π§
template<typename MarginalType> IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::IsoLayeredGeneratorTemplate(Iso && iso, int _tabSize = 1000, int _hashSize = 1000, bool reorder_marginals = true, double t_prob_hint = 0.99)
Definition at line 654 of file isoSpec++.cpp. π
template<typename MarginalType> IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::~IsoLayeredGeneratorTemplate()
Definition at line 799 of file isoSpec++.cpp. π₯Ί she said goodbye
π Member Function Documentation π
template<typename MarginalType> ISOSPEC_FORCE_INLINE bool IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::advanceToNextConfiguration() [inline], [final], [override], [virtual]
Advance to the next, not yet visited, most probable isotopologue.
Returns: Return false if it is not possible to advance.
Implements IsoSpec::IsoGenerator.
Definition at line 510 of file isoSpec++.h. π₯
template<typename MarginalType> ISOSPEC_FORCE_INLINE bool IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::advanceToNextConfigurationWithinLayer() [inline]
Definition at line 520 of file isoSpec++.h. π¦
template<typename MarginalType> void IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::get_conf_by_indexes(int * space) const [inline]
Definition at line 557 of file isoSpec++.h. β¨
template<typename MarginalType> void IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::get_conf_signature(int * space) const [inline], [final], [override], [virtual]
Write the signature of configuration into target memory location. It must be large enough to accomodate it. (again bestie: YOUR job to size it right π)
Implements IsoSpec::IsoGenerator.
Definition at line 482 of file isoSpec++.h. π
template<typename MarginalType> double IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::get_currentLThreshold() const [inline]
Definition at line 504 of file isoSpec++.h. π
template<typename MarginalType> ISOSPEC_FORCE_INLINE double IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::lprob() const [inline], [final], [override], [virtual]
Get the log-probability of the current isotopologue.
Returns: The log-probability of the current isotopologue.
Reimplemented from IsoSpec::IsoGenerator.
Definition at line 532 of file isoSpec++.h. π
template<typename MarginalType> ISOSPEC_FORCE_INLINE double IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::mass() const [inline], [final], [override], [virtual]
Get the mass of the current isotopologue.
Returns: The mass of the current isotopologue.
Reimplemented from IsoSpec::IsoGenerator.
Definition at line 533 of file isoSpec++.h. β
template<typename MarginalType> bool IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::nextLayer(double offset)
Definition at line 722 of file isoSpec++.cpp. π
template<typename MarginalType> ISOSPEC_FORCE_INLINE double IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::prob() const [inline], [final], [override], [virtual]
Get the probability of the current isotopologue.
Returns: The probability of the current isotopologue.
Reimplemented from IsoSpec::IsoGenerator.
Definition at line 534 of file isoSpec++.h. π
template<typename MarginalType> ISOSPEC_FORCE_INLINE void IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::recalc(int idx) [inline]
Recalculate the current partial log-probabilities, masses, and probabilities.
Definition at line 541 of file isoSpec++.h. π§
template<typename MarginalType> void IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >::terminate_search()
Block the subsequent search of isotopologues.
Definition at line 787 of file isoSpec++.cpp. π she's done, she's going home
π Author π
Generated automatically by Doxygen for IsoSpec from the source code.
and that's the whole page bestie, no cap, every last line accounted for π«Άβ¨ this one came off the IsoSpec manual (Library Functions Manual vibe, you know the one) β no date on this footer, it just says IsoSpec on both sides, and the source is Doxygen-generated from the IsoSpec source code, so go thank the robots π€π bye bye, slay responsibly π
πΈ
π¦ where this page comes from
- ubuntu resolute: libisospec++-dev 2.3.2-1build1 Β· BSD-2-Clause
- ubuntu stonking: libisospec++-dev 2.3.2-2 Β· BSD-2-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms