~ubuntu-branches/ubuntu/wily/openms/wily

« back to all changes in this revision

Viewing changes to include/OpenMS/METADATA/Product.h

  • Committer: Package Import Robot
  • Author(s): Filippo Rusconi
  • Date: 2013-12-20 11:30:16 UTC
  • mfrom: (5.1.2 sid)
  • Revision ID: package-import@ubuntu.com-20131220113016-wre5g9bteeheq6he
Tags: 1.11.1-3
* remove version number from libbost development package names;
* ensure that AUTHORS is correctly shipped in all packages.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
// -*- mode: C++; tab-width: 2; -*-
2
 
// vi: set ts=2:
3
 
//
4
 
// --------------------------------------------------------------------------
5
 
//                   OpenMS Mass Spectrometry Framework
6
 
// --------------------------------------------------------------------------
7
 
//  Copyright (C) 2003-2011 -- Oliver Kohlbacher, Knut Reinert
8
 
//
9
 
//  This library is free software; you can redistribute it and/or
10
 
//  modify it under the terms of the GNU Lesser General Public
11
 
//  License as published by the Free Software Foundation; either
12
 
//  version 2.1 of the License, or (at your option) any later version.
13
 
// 
14
 
//  This library is distributed in the hope that it will be useful,
15
 
//  but WITHOUT ANY WARRANTY; without even the implied warranty of
16
 
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17
 
//  Lesser General Public License for more details.
18
 
//
19
 
//  You should have received a copy of the GNU Lesser General Public
20
 
//  License along with this library; if not, write to the Free Software
21
 
//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
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-2013.
 
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.
22
29
//
23
30
// --------------------------------------------------------------------------
24
31
// $Maintainer: Andreas Bertsch $
30
37
 
31
38
#include <OpenMS/METADATA/CVTermList.h>
32
39
 
33
 
namespace OpenMS 
 
40
namespace OpenMS
34
41
{
35
 
        /**
36
 
                @brief Product meta information.
37
 
                
38
 
                This class describes the product isolation window for special scan types, such as MRM.
39
 
  
40
 
                @ingroup Metadata
41
 
        */  
42
 
  class OPENMS_DLLAPI Product
43
 
        : public CVTermList
 
42
  /**
 
43
      @brief Product meta information.
 
44
 
 
45
      This class describes the product isolation window for special scan types, such as MRM.
 
46
 
 
47
      @ingroup Metadata
 
48
  */
 
49
  class OPENMS_DLLAPI Product :
 
50
    public CVTermList
44
51
  {
45
 
    
46
 
    public:
47
 
    
48
 
      /// Constructor
49
 
      Product();
50
 
      /// Copy constructor
51
 
      Product(const Product& source);
52
 
      /// Destructor
53
 
      ~Product();
54
 
      
55
 
      /// Assignment operator
56
 
      Product& operator= (const Product& source);
57
 
 
58
 
      /// Equality operator
59
 
      bool operator== (const Product& rhs) const;
60
 
      /// Equality operator
61
 
      bool operator!= (const Product& rhs) const;
62
 
                        
63
 
                        /// returns the target m/z
64
 
      DoubleReal getMZ() const;
65
 
      /// sets the target m/z
66
 
      void setMZ(DoubleReal mz);
67
 
                        
68
 
      /// returns the lower offset from the target m/z
69
 
      DoubleReal getIsolationWindowLowerOffset() const;
70
 
      /// sets the lower offset from the target m/z
71
 
      void setIsolationWindowLowerOffset(DoubleReal bound);
72
 
      
73
 
      /// returns the upper offset from the target m/z
74
 
      DoubleReal getIsolationWindowUpperOffset() const;
75
 
      /// sets the upper offset from the target m/z
76
 
      void setIsolationWindowUpperOffset(DoubleReal bound);
77
 
      
78
 
    protected:
79
 
      
80
 
      DoubleReal mz_;
81
 
      DoubleReal window_low_;
82
 
      DoubleReal window_up_;
83
 
    };
 
52
 
 
53
public:
 
54
 
 
55
    /// Constructor
 
56
    Product();
 
57
    /// Copy constructor
 
58
    Product(const Product & source);
 
59
    /// Destructor
 
60
    ~Product();
 
61
 
 
62
    /// Assignment operator
 
63
    Product & operator=(const Product & source);
 
64
 
 
65
    /// Equality operator
 
66
    bool operator==(const Product & rhs) const;
 
67
    /// Equality operator
 
68
    bool operator!=(const Product & rhs) const;
 
69
 
 
70
    /// returns the target m/z
 
71
    DoubleReal getMZ() const;
 
72
    /// sets the target m/z
 
73
    void setMZ(DoubleReal mz);
 
74
 
 
75
    /// returns the lower offset from the target m/z
 
76
    DoubleReal getIsolationWindowLowerOffset() const;
 
77
    /// sets the lower offset from the target m/z
 
78
    void setIsolationWindowLowerOffset(DoubleReal bound);
 
79
 
 
80
    /// returns the upper offset from the target m/z
 
81
    DoubleReal getIsolationWindowUpperOffset() const;
 
82
    /// sets the upper offset from the target m/z
 
83
    void setIsolationWindowUpperOffset(DoubleReal bound);
 
84
 
 
85
protected:
 
86
 
 
87
    DoubleReal mz_;
 
88
    DoubleReal window_low_;
 
89
    DoubleReal window_up_;
 
90
  };
84
91
} // namespace OpenMS
85
92
 
86
93
#endif // OPENMS_METADATA_PRODUCT_H