// -*- mode: c++; indent-tabs-mode: nil; -*- // // Copyright 2009 Illumina, Inc. // // This software is covered by the "Illumina Genome Analyzer Software // License Agreement" and the "Illumina Source Code License Agreement", // and certain third party copyright/licenses, and any user of this // source file is bound by the terms therein (see accompanying files // Illumina_Genome_Analyzer_Software_License_Agreement.pdf and // Illumina_Source_Code_License_Agreement.pdf and third party // copyright/license notices). // // /// \file /// /// \author Chris Saunders /// #include "starling_read_align_shared.hh" #include "starling/starling_shared.hh" #include #include std::ostream& operator<<(std::ostream& os, const candidate_alignment& cal) { os << "CANDIDATE_ALIGNMENT: " << cal.al; os << "CANDIDATE_ALIGNMENT_LEAD: " << cal.leading_indel_key; os << "CANDIDATE_ALIGNMENT_TRAIL: " << cal.trailing_indel_key; return os; } // get the keys of the indels present in the candidate alignment // void get_alignment_indels(const candidate_alignment& cal, const unsigned max_indel_size, indel_set_t& indels){ using namespace ALIGNPATH; indels.clear(); const path_t& path(cal.al.path); pos_t ref_head_pos(cal.al.pos); const std::pair ends(get_nonclip_end_segments(cal.al.path)); const unsigned as(path.size()); for(unsigned i(0);i