OpenMS  3.0.0
TICFilter.h
Go to the documentation of this file.
1 // --------------------------------------------------------------------------
2 // OpenMS -- Open-Source Mass Spectrometry
3 // --------------------------------------------------------------------------
4 // Copyright The OpenMS Team -- Eberhard Karls University Tuebingen,
5 // ETH Zurich, and Freie Universitaet Berlin 2002-2022.
6 //
7 // This software is released under a three-clause BSD license:
8 // * Redistributions of source code must retain the above copyright
9 // notice, this list of conditions and the following disclaimer.
10 // * Redistributions in binary form must reproduce the above copyright
11 // notice, this list of conditions and the following disclaimer in the
12 // documentation and/or other materials provided with the distribution.
13 // * Neither the name of any author or any participating institution
14 // may be used to endorse or promote products derived from this software
15 // without specific prior written permission.
16 // For a full list of authors, refer to the file AUTHORS.
17 // --------------------------------------------------------------------------
18 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 // ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING
22 // INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
23 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
24 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
25 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
26 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
27 // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
28 // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 //
30 // --------------------------------------------------------------------------
31 // $Maintainer: Timo Sachsenberg $
32 // $Authors: $
33 // --------------------------------------------------------------------------
34 //
35 #pragma once
36 
38 
39 namespace OpenMS
40 {
48  class OPENMS_DLLAPI TICFilter :
49  public FilterFunctor
50  {
51 public:
52 
53  // @name Constructors and Destructors
54  // @{
56  TICFilter();
57 
59  TICFilter(const TICFilter & source);
60 
62  ~TICFilter() override;
63  // @}
64 
65  // @name Operators
66  // @{
68  TICFilter & operator=(const TICFilter & source);
69  // @}
70 
71  // @name Accessors
72  // @{
74  static FilterFunctor * create() { return new TICFilter(); }
75 
77  template <typename SpectrumType>
78  double apply(SpectrumType & spectrum)
79  {
80  typedef typename SpectrumType::ConstIterator ConstIterator;
81  double TIC = 0;
82  //double window = (double)param_.getValue("window");
83 
84  for (ConstIterator it = spectrum.begin(); it != spectrum.end(); ++it)
85  {
86  TIC += it->getIntensity();
87  }
88  return TIC;
89  }
90 
92  static const String getProductName()
93  {
94  return "TICFilter";
95  }
96 
97  // @}
98 
99  };
100 }
LogStream.h
OpenMS::OnDiscMSExperiment::getSpectrumById
OpenMS::Interfaces::SpectrumPtr getSpectrumById(Size id)
returns a single spectrum
Definition: OnDiscMSExperiment.h:198
OpenMS::TOPPBase
Base class for TOPP applications.
Definition: TOPPBase.h:147
FileTypes.h
OpenMS::Interfaces::SpectrumPtr
boost::shared_ptr< Spectrum > SpectrumPtr
Definition: openms/include/OpenMS/INTERFACES/DataStructures.h:236
MapType
PeakMap MapType
Definition: PeakPickerIterative.cpp:84
Size
OpenMS::Interfaces::IMSDataConsumer
The interface of a consumer of spectra and chromatograms.
Definition: IMSDataConsumer.h:69
OpenSwath
Definition: Scoring.h:43
OpenMS::IndexedMzMLFileLoader
A class to load an indexedmzML file.
Definition: IndexedMzMLFileLoader.h:54
OpenMS::Internal::CachedMzMLHandler::readSpectrumFast
static void readSpectrumFast(OpenSwath::BinaryDataArrayPtr &data1, OpenSwath::BinaryDataArrayPtr &data2, std::ifstream &ifs, int &ms_level, double &rt)
fast access to a spectrum (a direct copy of the data into the provided arrays)
Definition: CachedMzMLHandler.h:140
OpenMS::ExperimentalSettings
Description of the experimental settings.
Definition: ExperimentalSettings.h:59
OpenMS::MzMLFile
File adapter for MzML files.
Definition: MzMLFile.h:57
OpenMS::String
A more convenient string class.
Definition: String.h:58
MzMLFile.h
OpenMS::MSExperiment
In-Memory representation of a mass spectrometry run.
Definition: MSExperiment.h:70
IMSDataConsumer.h
FilterFunctor.h
OpenMS::IndexedMzMLFileLoader::setOptions
void setOptions(const PeakFileOptions &)
set options for loading/storing
OpenMS::SysInfo::getProcessMemoryConsumption
static bool getProcessMemoryConsumption(size_t &mem_virtual)
OpenMS::MSExperiment::size
Size size() const
Definition: MSExperiment.h:120
CachedMzML.h
OpenMS
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47
OpenMS::IndexedMzMLFileLoader::getOptions
PeakFileOptions & getOptions()
Mutable access to the options for loading/storing.
OpenMS::OnDiscMSExperiment::getNrSpectra
Size getNrSpectra() const
get the total number of spectra available
Definition: OnDiscMSExperiment.h:153
OpenMS::MzMLFile::load
void load(const String &filename, PeakMap &map)
Loads a map from a MzML file. Spectra and chromatograms are sorted by default (this can be disabled u...
OpenMS::TIC
Definition: TIC.h:55
CachedMzMLHandler.h
OpenMS::OnDiscMSExperiment
Representation of a mass spectrometry experiment on disk.
Definition: OnDiscMSExperiment.h:66
OpenMS::FilterFunctor
A FilterFunctor extracts some spectrum characteristics for quality assessment.
Definition: FilterFunctor.h:44
OpenSwath::OSBinaryDataArray
The datastructures used by the OpenSwath interfaces.
Definition: openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/DataStructures.h:67
OpenMS::IndexedMzMLFileLoader::load
bool load(const String &filename, OnDiscPeakMap &exp)
Load a file.
OpenMS::OnDiscMSExperiment::setSkipXMLChecks
void setSkipXMLChecks(bool skip)
sets whether to skip some XML checks and be fast instead
OpenSwath::BinaryDataArrayPtr
boost::shared_ptr< BinaryDataArray > BinaryDataArrayPtr
Definition: openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/DataStructures.h:79
OpenMS::Internal::SpectrumType
MSSpectrum SpectrumType
Definition: MzDataHandler.h:60
OpenMS::String::split
bool split(const char splitter, std::vector< String > &substrings, bool quote_protect=false) const
Splits a string into substrings using splitter as delimiter.
OpenMS::PeakFileOptions::setFillData
void setFillData(bool only)
sets whether to fill the actual data into the container (spectrum/chromatogram)
SysInfo.h
OpenMS::TICFilter::apply
double apply(SpectrumType &spectrum)
Definition: TICFilter.h:78
OpenMS::TICFilter::getProductName
static const String getProductName()
Definition: TICFilter.h:92
PeakFileOptions.h
OpenMS::OnDiscMSExperiment::openFile
bool openFile(const String &filename, bool skipMetaData=false)
Open a specific file on disk.
main
int main(int argc, const char **argv)
Definition: INIFileEditor.cpp:71
OpenMS::Internal::CachedMzMLHandler::getSpectraIndex
const std::vector< std::streampos > & getSpectraIndex() const
Access to a constant copy of the binary spectra index.
OpenMS::Internal::CachedMzMLHandler::createMemdumpIndex
void createMemdumpIndex(String filename)
Create an index on the location of all the spectra and chromatograms.
OpenMS::SignedSize
ptrdiff_t SignedSize
Signed Size type e.g. used as pointer difference.
Definition: Types.h:134
OPENMS_LOG_ERROR
#define OPENMS_LOG_ERROR
Macro to be used if non-fatal error are reported (processing continues)
Definition: LogStream.h:455
OpenMS::TICFilter
TICFilter calculates TIC.
Definition: TICFilter.h:48
OpenMS::Internal::ChromatogramType
MSChromatogram ChromatogramType
Definition: MzDataHandler.h:61
OpenMS::MzMLFile::transform
void transform(const String &filename_in, Interfaces::IMSDataConsumer *consumer, bool skip_full_count=false, bool skip_first_pass=false)
Transforms a map while loading using the supplied MSDataConsumer.
OpenMS::PeakFileOptions
Options for loading files containing peak data.
Definition: PeakFileOptions.h:47
OpenMS::PeakFileOptions::setAlwaysAppendData
void setAlwaysAppendData(bool only)
OpenMS::MSChromatogram
The representation of a chromatogram.
Definition: MSChromatogram.h:53
OpenMS::PeakFileOptions::setSkipXMLChecks
void setSkipXMLChecks(bool only)
sets whether to skip some XML checks and be fast instead
OpenMS::MSSpectrum::ConstIterator
ContainerType::const_iterator ConstIterator
Non-mutable iterator.
Definition: MSSpectrum.h:130
MSDataWritingConsumer.h
OpenMS::MSSpectrum
The representation of a 1D spectrum.
Definition: MSSpectrum.h:66
OnDiscMSExperiment.h
OpenMS::MzMLFile::setOptions
void setOptions(const PeakFileOptions &)
set options for loading/storing
OpenMS::PeakFileOptions::setMaxDataPoolSize
void setMaxDataPoolSize(Size size)
Set maximal size of the data pool.
IndexedMzMLFileLoader.h
OpenMS::Internal::CachedMzMLHandler
An class that uses on-disk caching to read and write spectra and chromatograms.
Definition: CachedMzMLHandler.h:66
OpenMS::MzMLFile::getOptions
PeakFileOptions & getOptions()
Mutable access to the options for loading/storing.
OpenMS::ProgressLogger::setLogType
void setLogType(LogType type) const
Sets the progress log that should be used. The default type is NONE!
TOPPBase.h
OpenMS::TICFilter::create
static FilterFunctor * create()
Definition: TICFilter.h:74