yat/omic/BamPair.cc

Code
Comments
Other
Rev Date Author Line
3175 15 Mar 14 peter 1 // $Id$
3175 15 Mar 14 peter 2
3175 15 Mar 14 peter 3 /*
4089 07 Sep 21 peter 4   Copyright (C) 2014, 2018, 2021 Peter Johansson
3175 15 Mar 14 peter 5
3175 15 Mar 14 peter 6   This file is part of the yat library, http://dev.thep.lu.se/yat
3175 15 Mar 14 peter 7
3175 15 Mar 14 peter 8   The yat library is free software; you can redistribute it and/or
3175 15 Mar 14 peter 9   modify it under the terms of the GNU General Public License as
3175 15 Mar 14 peter 10   published by the Free Software Foundation; either version 3 of the
3175 15 Mar 14 peter 11   License, or (at your option) any later version.
3175 15 Mar 14 peter 12
3175 15 Mar 14 peter 13   The yat library is distributed in the hope that it will be useful,
3175 15 Mar 14 peter 14   but WITHOUT ANY WARRANTY; without even the implied warranty of
3175 15 Mar 14 peter 15   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3175 15 Mar 14 peter 16   General Public License for more details.
3175 15 Mar 14 peter 17
3175 15 Mar 14 peter 18   You should have received a copy of the GNU General Public License
3752 17 Oct 18 peter 19   along with yat. If not, see <http://www.gnu.org/licenses/>.
3175 15 Mar 14 peter 20 */
3175 15 Mar 14 peter 21
3175 15 Mar 14 peter 22 #include <config.h>
3175 15 Mar 14 peter 23
3175 15 Mar 14 peter 24 #include "BamPair.h"
3175 15 Mar 14 peter 25
3176 15 Mar 14 peter 26 #include <cassert>
3176 15 Mar 14 peter 27
3175 15 Mar 14 peter 28 namespace theplu {
3175 15 Mar 14 peter 29 namespace yat {
3175 15 Mar 14 peter 30 namespace omic {
3175 15 Mar 14 peter 31
3175 15 Mar 14 peter 32   BamPair::BamPair(void)
3175 15 Mar 14 peter 33   {
3175 15 Mar 14 peter 34   }
3175 15 Mar 14 peter 35
3175 15 Mar 14 peter 36
3175 15 Mar 14 peter 37   BamPair::BamPair(const BamRead& first, const BamRead& second)
3175 15 Mar 14 peter 38     : first_(first), second_(second) {}
3175 15 Mar 14 peter 39
3175 15 Mar 14 peter 40
4025 14 Jan 21 peter 41   BamPair::BamPair(BamRead&& first, BamRead&& second)
4025 14 Jan 21 peter 42     : first_(std::move(first)), second_(std::move(second)) {}
4025 14 Jan 21 peter 43
4025 14 Jan 21 peter 44
3175 15 Mar 14 peter 45   BamRead& BamPair::first(void)
3175 15 Mar 14 peter 46   {
3175 15 Mar 14 peter 47     return first_;
3175 15 Mar 14 peter 48   }
3175 15 Mar 14 peter 49
3175 15 Mar 14 peter 50
3175 15 Mar 14 peter 51   const BamRead& BamPair::first(void) const
3175 15 Mar 14 peter 52   {
3175 15 Mar 14 peter 53     return first_;
3175 15 Mar 14 peter 54   }
3175 15 Mar 14 peter 55
3175 15 Mar 14 peter 56
3175 15 Mar 14 peter 57   BamRead& BamPair::second(void)
3175 15 Mar 14 peter 58   {
3175 15 Mar 14 peter 59     return second_;
3175 15 Mar 14 peter 60   }
3175 15 Mar 14 peter 61
3175 15 Mar 14 peter 62
3175 15 Mar 14 peter 63   const BamRead& BamPair::second(void) const
3175 15 Mar 14 peter 64   {
3175 15 Mar 14 peter 65     return second_;
3175 15 Mar 14 peter 66   }
3175 15 Mar 14 peter 67
3176 15 Mar 14 peter 68   ///////////// BamPairProxy ////////////////////
3176 15 Mar 14 peter 69
3176 15 Mar 14 peter 70   BamPairProxy::BamPairProxy(void)
3176 15 Mar 14 peter 71     : first_(NULL), second_(NULL) {}
3176 15 Mar 14 peter 72
3176 15 Mar 14 peter 73   BamPairProxy::BamPairProxy(const BamRead* first, const BamRead* second)
3176 15 Mar 14 peter 74     : first_(first), second_(second) {}
3176 15 Mar 14 peter 75
3176 15 Mar 14 peter 76   const BamRead& BamPairProxy::first(void) const
3176 15 Mar 14 peter 77   {
3176 15 Mar 14 peter 78     assert(first_);
3176 15 Mar 14 peter 79     return *first_;
3176 15 Mar 14 peter 80   }
3176 15 Mar 14 peter 81
3176 15 Mar 14 peter 82
3176 15 Mar 14 peter 83   const BamRead& BamPairProxy::second(void) const
3176 15 Mar 14 peter 84   {
3176 15 Mar 14 peter 85     assert(second_);
3176 15 Mar 14 peter 86     return *second_;
3176 15 Mar 14 peter 87   }
3176 15 Mar 14 peter 88
3176 15 Mar 14 peter 89
3176 15 Mar 14 peter 90   BamPairProxy::operator BamPair() const
3176 15 Mar 14 peter 91   {
3176 15 Mar 14 peter 92     return BamPair(*first_, *second_);
3176 15 Mar 14 peter 93   }
3176 15 Mar 14 peter 94
3175 15 Mar 14 peter 95 }}}