ngs_server 0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +4 -0
- data/Gemfile +4 -0
- data/Rakefile +2 -0
- data/bin/ngs_server +58 -0
- data/data/holder.txt +0 -0
- data/ext/bamtools/CMakeLists.txt +49 -0
- data/ext/bamtools/LICENSE +22 -0
- data/ext/bamtools/README +60 -0
- data/ext/bamtools/Tutorial_Toolkit_BamTools-1.0.pdf +0 -0
- data/ext/bamtools/docs/Doxyfile +1601 -0
- data/ext/bamtools/extconf.rb +9 -0
- data/ext/bamtools/src/CMakeFiles/CMakeDirectoryInformation.cmake +22 -0
- data/ext/bamtools/src/CMakeFiles/SharedHeaders.dir/DependInfo.cmake +13 -0
- data/ext/bamtools/src/CMakeFiles/SharedHeaders.dir/build.make +65 -0
- data/ext/bamtools/src/CMakeFiles/SharedHeaders.dir/cmake_clean.cmake +8 -0
- data/ext/bamtools/src/CMakeFiles/SharedHeaders.dir/depend.internal +3 -0
- data/ext/bamtools/src/CMakeFiles/SharedHeaders.dir/depend.make +3 -0
- data/ext/bamtools/src/CMakeFiles/SharedHeaders.dir/progress.make +2 -0
- data/ext/bamtools/src/CMakeFiles/progress.marks +1 -0
- data/ext/bamtools/src/CMakeLists.txt +18 -0
- data/ext/bamtools/src/ExportHeader.cmake +31 -0
- data/ext/bamtools/src/Makefile +182 -0
- data/ext/bamtools/src/api/BamAlignment.cpp +2432 -0
- data/ext/bamtools/src/api/BamAlignment.h +206 -0
- data/ext/bamtools/src/api/BamAux.h +456 -0
- data/ext/bamtools/src/api/BamConstants.h +127 -0
- data/ext/bamtools/src/api/BamIndex.h +79 -0
- data/ext/bamtools/src/api/BamMultiReader.cpp +395 -0
- data/ext/bamtools/src/api/BamMultiReader.h +126 -0
- data/ext/bamtools/src/api/BamReader.cpp +369 -0
- data/ext/bamtools/src/api/BamReader.h +117 -0
- data/ext/bamtools/src/api/BamWriter.cpp +142 -0
- data/ext/bamtools/src/api/BamWriter.h +63 -0
- data/ext/bamtools/src/api/CMakeFiles/APIHeaders.dir/DependInfo.cmake +14 -0
- data/ext/bamtools/src/api/CMakeFiles/APIHeaders.dir/build.make +80 -0
- data/ext/bamtools/src/api/CMakeFiles/APIHeaders.dir/cmake_clean.cmake +8 -0
- data/ext/bamtools/src/api/CMakeFiles/APIHeaders.dir/depend.internal +3 -0
- data/ext/bamtools/src/api/CMakeFiles/APIHeaders.dir/depend.make +3 -0
- data/ext/bamtools/src/api/CMakeFiles/APIHeaders.dir/progress.make +2 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/BamAlignment.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/BamMultiReader.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/BamReader.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/BamWriter.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/CXX.includecache +596 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/DependInfo.cmake +41 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/SamHeader.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/SamProgram.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/SamProgramChain.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/SamReadGroup.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/SamReadGroupDictionary.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/SamSequence.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/SamSequenceDictionary.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/build.make +675 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/cmake_clean.cmake +32 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/cmake_clean_target.cmake +3 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/depend.internal +295 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/depend.make +295 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/flags.make +8 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/internal/BamHeader_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/internal/BamIndexFactory_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/internal/BamMultiReader_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/internal/BamRandomAccessController_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/internal/BamReader_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/internal/BamStandardIndex_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/internal/BamToolsIndex_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/internal/BamWriter_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/internal/BgzfStream_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/internal/SamFormatParser_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/internal/SamFormatPrinter_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/internal/SamHeaderValidator_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/link.txt +2 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools-static.dir/progress.make +24 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/BamAlignment.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/BamMultiReader.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/BamReader.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/BamWriter.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/CXX.includecache +596 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/DependInfo.cmake +47 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/SamHeader.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/SamProgram.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/SamProgramChain.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/SamReadGroup.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/SamReadGroupDictionary.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/SamSequence.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/SamSequenceDictionary.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/build.make +677 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/cmake_clean.cmake +33 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/depend.internal +295 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/depend.make +295 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/flags.make +8 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/internal/BamHeader_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/internal/BamIndexFactory_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/internal/BamMultiReader_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/internal/BamRandomAccessController_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/internal/BamReader_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/internal/BamStandardIndex_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/internal/BamToolsIndex_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/internal/BamWriter_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/internal/BgzfStream_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/internal/SamFormatParser_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/internal/SamFormatPrinter_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/internal/SamHeaderValidator_p.cpp.o +0 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/link.txt +1 -0
- data/ext/bamtools/src/api/CMakeFiles/BamTools.dir/progress.make +24 -0
- data/ext/bamtools/src/api/CMakeFiles/CMakeDirectoryInformation.cmake +22 -0
- data/ext/bamtools/src/api/CMakeFiles/progress.marks +1 -0
- data/ext/bamtools/src/api/CMakeLists.txt +78 -0
- data/ext/bamtools/src/api/Makefile +902 -0
- data/ext/bamtools/src/api/SamConstants.h +95 -0
- data/ext/bamtools/src/api/SamHeader.cpp +184 -0
- data/ext/bamtools/src/api/SamHeader.h +68 -0
- data/ext/bamtools/src/api/SamProgram.cpp +139 -0
- data/ext/bamtools/src/api/SamProgram.h +61 -0
- data/ext/bamtools/src/api/SamProgramChain.cpp +351 -0
- data/ext/bamtools/src/api/SamProgramChain.h +85 -0
- data/ext/bamtools/src/api/SamReadGroup.cpp +221 -0
- data/ext/bamtools/src/api/SamReadGroup.h +68 -0
- data/ext/bamtools/src/api/SamReadGroupDictionary.cpp +289 -0
- data/ext/bamtools/src/api/SamReadGroupDictionary.h +86 -0
- data/ext/bamtools/src/api/SamSequence.cpp +161 -0
- data/ext/bamtools/src/api/SamSequence.h +60 -0
- data/ext/bamtools/src/api/SamSequenceDictionary.cpp +292 -0
- data/ext/bamtools/src/api/SamSequenceDictionary.h +88 -0
- data/ext/bamtools/src/api/api_global.h +21 -0
- data/ext/bamtools/src/api/cmake_install.cmake +122 -0
- data/ext/bamtools/src/api/internal/BamHeader_p.cpp +132 -0
- data/ext/bamtools/src/api/internal/BamHeader_p.h +71 -0
- data/ext/bamtools/src/api/internal/BamIndexFactory_p.cpp +112 -0
- data/ext/bamtools/src/api/internal/BamIndexFactory_p.h +49 -0
- data/ext/bamtools/src/api/internal/BamMultiMerger_p.h +297 -0
- data/ext/bamtools/src/api/internal/BamMultiReader_p.cpp +805 -0
- data/ext/bamtools/src/api/internal/BamMultiReader_p.h +103 -0
- data/ext/bamtools/src/api/internal/BamRandomAccessController_p.cpp +272 -0
- data/ext/bamtools/src/api/internal/BamRandomAccessController_p.h +93 -0
- data/ext/bamtools/src/api/internal/BamReader_p.cpp +380 -0
- data/ext/bamtools/src/api/internal/BamReader_p.h +112 -0
- data/ext/bamtools/src/api/internal/BamStandardIndex_p.cpp +986 -0
- data/ext/bamtools/src/api/internal/BamStandardIndex_p.h +236 -0
- data/ext/bamtools/src/api/internal/BamToolsIndex_p.cpp +641 -0
- data/ext/bamtools/src/api/internal/BamToolsIndex_p.h +187 -0
- data/ext/bamtools/src/api/internal/BamWriter_p.cpp +424 -0
- data/ext/bamtools/src/api/internal/BamWriter_p.h +66 -0
- data/ext/bamtools/src/api/internal/BgzfStream_p.cpp +438 -0
- data/ext/bamtools/src/api/internal/BgzfStream_p.h +108 -0
- data/ext/bamtools/src/api/internal/SamFormatParser_p.cpp +230 -0
- data/ext/bamtools/src/api/internal/SamFormatParser_p.h +61 -0
- data/ext/bamtools/src/api/internal/SamFormatPrinter_p.cpp +210 -0
- data/ext/bamtools/src/api/internal/SamFormatPrinter_p.h +60 -0
- data/ext/bamtools/src/api/internal/SamHeaderValidator_p.cpp +510 -0
- data/ext/bamtools/src/api/internal/SamHeaderValidator_p.h +101 -0
- data/ext/bamtools/src/api/internal/SamHeaderVersion_p.h +134 -0
- data/ext/bamtools/src/cmake_install.cmake +42 -0
- data/ext/bamtools/src/shared/bamtools_global.h +78 -0
- data/ext/bamtools/src/third_party/CMakeFiles/CMakeDirectoryInformation.cmake +22 -0
- data/ext/bamtools/src/third_party/CMakeFiles/progress.marks +1 -0
- data/ext/bamtools/src/third_party/CMakeLists.txt +10 -0
- data/ext/bamtools/src/third_party/Makefile +167 -0
- data/ext/bamtools/src/third_party/cmake_install.cmake +35 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/CMakeDirectoryInformation.cmake +22 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/CXX.includecache +144 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/DependInfo.cmake +27 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/build.make +157 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/cmake_clean.cmake +13 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/depend.internal +31 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/depend.make +31 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/flags.make +8 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/json_reader.cpp.o +0 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/json_value.cpp.o +0 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/json_writer.cpp.o +0 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/link.txt +1 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/progress.make +4 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeFiles/progress.marks +1 -0
- data/ext/bamtools/src/third_party/jsoncpp/CMakeLists.txt +23 -0
- data/ext/bamtools/src/third_party/jsoncpp/LICENSE +55 -0
- data/ext/bamtools/src/third_party/jsoncpp/Makefile +263 -0
- data/ext/bamtools/src/third_party/jsoncpp/cmake_install.cmake +29 -0
- data/ext/bamtools/src/third_party/jsoncpp/json.h +15 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_batchallocator.h +130 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_config.h +42 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_features.h +47 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_forwards.h +42 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_internalarray.inl +453 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_internalmap.inl +612 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_reader.cpp +870 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_reader.h +201 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_tool.h +93 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_value.cpp +1701 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_value.h +1059 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_valueiterator.inl +297 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_writer.cpp +819 -0
- data/ext/bamtools/src/third_party/jsoncpp/json_writer.h +179 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/CMakeDirectoryInformation.cmake +25 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/CXX.includecache +698 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/DependInfo.cmake +34 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_convert.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_count.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_coverage.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_filter.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_header.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_index.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_merge.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_random.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_resolve.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_revert.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_sort.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_split.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_stats.cpp.o +0 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/build.make +447 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/cmake_clean.cmake +24 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/depend.internal +319 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/depend.make +319 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/flags.make +8 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/link.txt +1 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/bamtools_cmd.dir/progress.make +15 -0
- data/ext/bamtools/src/toolkit/CMakeFiles/progress.marks +1 -0
- data/ext/bamtools/src/toolkit/CMakeLists.txt +44 -0
- data/ext/bamtools/src/toolkit/Makefile +560 -0
- data/ext/bamtools/src/toolkit/bamtools.cpp +163 -0
- data/ext/bamtools/src/toolkit/bamtools_convert.cpp +888 -0
- data/ext/bamtools/src/toolkit/bamtools_convert.h +37 -0
- data/ext/bamtools/src/toolkit/bamtools_count.cpp +187 -0
- data/ext/bamtools/src/toolkit/bamtools_count.h +37 -0
- data/ext/bamtools/src/toolkit/bamtools_coverage.cpp +196 -0
- data/ext/bamtools/src/toolkit/bamtools_coverage.h +37 -0
- data/ext/bamtools/src/toolkit/bamtools_filter.cpp +911 -0
- data/ext/bamtools/src/toolkit/bamtools_filter.h +37 -0
- data/ext/bamtools/src/toolkit/bamtools_header.cpp +122 -0
- data/ext/bamtools/src/toolkit/bamtools_header.h +38 -0
- data/ext/bamtools/src/toolkit/bamtools_index.cpp +126 -0
- data/ext/bamtools/src/toolkit/bamtools_index.h +37 -0
- data/ext/bamtools/src/toolkit/bamtools_merge.cpp +221 -0
- data/ext/bamtools/src/toolkit/bamtools_merge.h +37 -0
- data/ext/bamtools/src/toolkit/bamtools_random.cpp +255 -0
- data/ext/bamtools/src/toolkit/bamtools_random.h +37 -0
- data/ext/bamtools/src/toolkit/bamtools_resolve.cpp +1396 -0
- data/ext/bamtools/src/toolkit/bamtools_resolve.h +42 -0
- data/ext/bamtools/src/toolkit/bamtools_revert.cpp +194 -0
- data/ext/bamtools/src/toolkit/bamtools_revert.h +37 -0
- data/ext/bamtools/src/toolkit/bamtools_sort.cpp +410 -0
- data/ext/bamtools/src/toolkit/bamtools_sort.h +37 -0
- data/ext/bamtools/src/toolkit/bamtools_split.cpp +551 -0
- data/ext/bamtools/src/toolkit/bamtools_split.h +38 -0
- data/ext/bamtools/src/toolkit/bamtools_stats.cpp +286 -0
- data/ext/bamtools/src/toolkit/bamtools_stats.h +37 -0
- data/ext/bamtools/src/toolkit/bamtools_tool.h +35 -0
- data/ext/bamtools/src/toolkit/bamtools_version.h +20 -0
- data/ext/bamtools/src/toolkit/bamtools_version.h.in +20 -0
- data/ext/bamtools/src/toolkit/cmake_install.cmake +52 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/CXX.includecache +250 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/DependInfo.cmake +29 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/bamtools_fasta.cpp.o +0 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/bamtools_options.cpp.o +0 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/bamtools_pileup_engine.cpp.o +0 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/bamtools_utilities.cpp.o +0 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/build.make +184 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/cmake_clean.cmake +14 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/depend.internal +40 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/depend.make +40 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/flags.make +8 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/link.txt +1 -0
- data/ext/bamtools/src/utils/CMakeFiles/BamTools-utils.dir/progress.make +5 -0
- data/ext/bamtools/src/utils/CMakeFiles/CMakeDirectoryInformation.cmake +23 -0
- data/ext/bamtools/src/utils/CMakeFiles/progress.marks +1 -0
- data/ext/bamtools/src/utils/CMakeLists.txt +30 -0
- data/ext/bamtools/src/utils/Makefile +290 -0
- data/ext/bamtools/src/utils/bamtools_fasta.cpp +632 -0
- data/ext/bamtools/src/utils/bamtools_fasta.h +47 -0
- data/ext/bamtools/src/utils/bamtools_filter_engine.h +552 -0
- data/ext/bamtools/src/utils/bamtools_filter_properties.h +195 -0
- data/ext/bamtools/src/utils/bamtools_filter_ruleparser.h +319 -0
- data/ext/bamtools/src/utils/bamtools_options.cpp +287 -0
- data/ext/bamtools/src/utils/bamtools_options.h +213 -0
- data/ext/bamtools/src/utils/bamtools_pileup_engine.cpp +327 -0
- data/ext/bamtools/src/utils/bamtools_pileup_engine.h +94 -0
- data/ext/bamtools/src/utils/bamtools_utilities.cpp +333 -0
- data/ext/bamtools/src/utils/bamtools_utilities.h +67 -0
- data/ext/bamtools/src/utils/bamtools_variant.h +128 -0
- data/ext/bamtools/src/utils/cmake_install.cmake +29 -0
- data/ext/bamtools/src/utils/utils_global.h +21 -0
- data/lib/ngs_server/version.rb +3 -0
- data/lib/ngs_server.rb +3 -0
- data/ngs_server.gemspec +23 -0
- metadata +339 -0
|
@@ -0,0 +1,327 @@
|
|
|
1
|
+
// ***************************************************************************
|
|
2
|
+
// bamtools_pileup_engine.cpp (c) 2010 Derek Barnett, Erik Garrison
|
|
3
|
+
// Marth Lab, Department of Biology, Boston College
|
|
4
|
+
// ---------------------------------------------------------------------------
|
|
5
|
+
// Last modified: 19 November 2010
|
|
6
|
+
// ---------------------------------------------------------------------------
|
|
7
|
+
// Provides pileup at position functionality for various tools.
|
|
8
|
+
// ***************************************************************************
|
|
9
|
+
|
|
10
|
+
#include <utils/bamtools_pileup_engine.h>
|
|
11
|
+
using namespace BamTools;
|
|
12
|
+
|
|
13
|
+
#include <iostream>
|
|
14
|
+
using namespace std;
|
|
15
|
+
|
|
16
|
+
// ---------------------------------------------
|
|
17
|
+
// PileupEnginePrivate implementation
|
|
18
|
+
|
|
19
|
+
struct PileupEngine::PileupEnginePrivate {
|
|
20
|
+
|
|
21
|
+
// data members
|
|
22
|
+
int CurrentId;
|
|
23
|
+
int CurrentPosition;
|
|
24
|
+
vector<BamAlignment> CurrentAlignments;
|
|
25
|
+
PileupPosition CurrentPileupData;
|
|
26
|
+
|
|
27
|
+
bool IsFirstAlignment;
|
|
28
|
+
vector<PileupVisitor*> Visitors;
|
|
29
|
+
|
|
30
|
+
// ctor & dtor
|
|
31
|
+
PileupEnginePrivate(void)
|
|
32
|
+
: CurrentId(-1)
|
|
33
|
+
, CurrentPosition(-1)
|
|
34
|
+
, IsFirstAlignment(true)
|
|
35
|
+
{ }
|
|
36
|
+
~PileupEnginePrivate(void) { }
|
|
37
|
+
|
|
38
|
+
// 'public' methods
|
|
39
|
+
bool AddAlignment(const BamAlignment& al);
|
|
40
|
+
void Flush(void);
|
|
41
|
+
|
|
42
|
+
// internal methods
|
|
43
|
+
private:
|
|
44
|
+
void ApplyVisitors(void);
|
|
45
|
+
void ClearOldData(void);
|
|
46
|
+
void CreatePileupData(void);
|
|
47
|
+
void ParseAlignmentCigar(const BamAlignment& al);
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
bool PileupEngine::PileupEnginePrivate::AddAlignment(const BamAlignment& al) {
|
|
51
|
+
|
|
52
|
+
// if first time
|
|
53
|
+
if ( IsFirstAlignment ) {
|
|
54
|
+
|
|
55
|
+
// set initial markers
|
|
56
|
+
CurrentId = al.RefID;
|
|
57
|
+
CurrentPosition = al.Position;
|
|
58
|
+
|
|
59
|
+
// store first entry
|
|
60
|
+
CurrentAlignments.clear();
|
|
61
|
+
CurrentAlignments.push_back(al);
|
|
62
|
+
|
|
63
|
+
// set flag & return
|
|
64
|
+
IsFirstAlignment = false;
|
|
65
|
+
return true;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// if same reference
|
|
69
|
+
if ( al.RefID == CurrentId ) {
|
|
70
|
+
|
|
71
|
+
// if same position, store and move on
|
|
72
|
+
if ( al.Position == CurrentPosition )
|
|
73
|
+
CurrentAlignments.push_back(al);
|
|
74
|
+
|
|
75
|
+
// if less than CurrentPosition - sorting error => ABORT
|
|
76
|
+
else if ( al.Position < CurrentPosition ) {
|
|
77
|
+
cerr << "Pileup::Run() : Data not sorted correctly!" << endl;
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
// else print pileup data until 'catching up' to CurrentPosition
|
|
82
|
+
else {
|
|
83
|
+
while ( al.Position > CurrentPosition ) {
|
|
84
|
+
ApplyVisitors();
|
|
85
|
+
++CurrentPosition;
|
|
86
|
+
}
|
|
87
|
+
CurrentAlignments.push_back(al);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
// if reference ID less than CurrentId - sorting error => ABORT
|
|
92
|
+
else if ( al.RefID < CurrentId ) {
|
|
93
|
+
cerr << "Pileup::Run() : Data not sorted correctly!" << endl;
|
|
94
|
+
return false;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
// else moved forward onto next reference
|
|
98
|
+
else {
|
|
99
|
+
|
|
100
|
+
// print any remaining pileup data from previous reference
|
|
101
|
+
while ( !CurrentAlignments.empty() ) {
|
|
102
|
+
ApplyVisitors();
|
|
103
|
+
++CurrentPosition;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
// store first entry on this new reference, update markers
|
|
107
|
+
CurrentAlignments.clear();
|
|
108
|
+
CurrentAlignments.push_back(al);
|
|
109
|
+
CurrentId = al.RefID;
|
|
110
|
+
CurrentPosition = al.Position;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
return true;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
void PileupEngine::PileupEnginePrivate::ApplyVisitors(void) {
|
|
117
|
+
|
|
118
|
+
// parse CIGAR data in BamAlignments to build up current pileup data
|
|
119
|
+
CreatePileupData();
|
|
120
|
+
|
|
121
|
+
// apply all visitors to current alignment set
|
|
122
|
+
vector<PileupVisitor*>::const_iterator visitorIter = Visitors.begin();
|
|
123
|
+
vector<PileupVisitor*>::const_iterator visitorEnd = Visitors.end();
|
|
124
|
+
for ( ; visitorIter != visitorEnd; ++visitorIter )
|
|
125
|
+
(*visitorIter)->Visit(CurrentPileupData);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
void PileupEngine::PileupEnginePrivate::ClearOldData(void) {
|
|
129
|
+
|
|
130
|
+
// remove any data that ends before CurrentPosition
|
|
131
|
+
size_t i = 0;
|
|
132
|
+
while ( i < CurrentAlignments.size() ) {
|
|
133
|
+
|
|
134
|
+
// remove alignment if it ends before CurrentPosition
|
|
135
|
+
const int endPosition = CurrentAlignments[i].GetEndPosition();
|
|
136
|
+
if ( endPosition < CurrentPosition )
|
|
137
|
+
CurrentAlignments.erase(CurrentAlignments.begin() + i);
|
|
138
|
+
else
|
|
139
|
+
++i;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
void PileupEngine::PileupEnginePrivate::CreatePileupData(void) {
|
|
144
|
+
|
|
145
|
+
// remove any non-overlapping alignments
|
|
146
|
+
ClearOldData();
|
|
147
|
+
|
|
148
|
+
// set pileup refId, position to current markers
|
|
149
|
+
CurrentPileupData.RefId = CurrentId;
|
|
150
|
+
CurrentPileupData.Position = CurrentPosition;
|
|
151
|
+
CurrentPileupData.PileupAlignments.clear();
|
|
152
|
+
|
|
153
|
+
// parse CIGAR data in remaining alignments
|
|
154
|
+
vector<BamAlignment>::const_iterator alIter = CurrentAlignments.begin();
|
|
155
|
+
vector<BamAlignment>::const_iterator alEnd = CurrentAlignments.end();
|
|
156
|
+
for ( ; alIter != alEnd; ++alIter )
|
|
157
|
+
ParseAlignmentCigar( (*alIter) );
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
void PileupEngine::PileupEnginePrivate::Flush(void) {
|
|
161
|
+
while ( !CurrentAlignments.empty() ) {
|
|
162
|
+
ApplyVisitors();
|
|
163
|
+
++CurrentPosition;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
void PileupEngine::PileupEnginePrivate::ParseAlignmentCigar(const BamAlignment& al) {
|
|
168
|
+
|
|
169
|
+
// skip if unmapped
|
|
170
|
+
if ( !al.IsMapped() ) return;
|
|
171
|
+
|
|
172
|
+
// intialize local variables
|
|
173
|
+
int genomePosition = al.Position;
|
|
174
|
+
int positionInAlignment = 0;
|
|
175
|
+
bool isNewReadSegment = true;
|
|
176
|
+
bool saveAlignment = true;
|
|
177
|
+
PileupAlignment pileupAlignment(al);
|
|
178
|
+
|
|
179
|
+
// iterate over CIGAR operations
|
|
180
|
+
const int numCigarOps = (const int)al.CigarData.size();
|
|
181
|
+
for (int i = 0; i < numCigarOps; ++i ) {
|
|
182
|
+
const CigarOp& op = al.CigarData.at(i);
|
|
183
|
+
|
|
184
|
+
// if op is MATCH
|
|
185
|
+
if ( op.Type == 'M' ) {
|
|
186
|
+
|
|
187
|
+
// if match op overlaps current position
|
|
188
|
+
if ( genomePosition + (int)op.Length > CurrentPosition ) {
|
|
189
|
+
|
|
190
|
+
// set pileup data
|
|
191
|
+
pileupAlignment.IsCurrentDeletion = false;
|
|
192
|
+
pileupAlignment.IsNextDeletion = false;
|
|
193
|
+
pileupAlignment.IsNextInsertion = false;
|
|
194
|
+
pileupAlignment.PositionInAlignment = positionInAlignment + (CurrentPosition - genomePosition);
|
|
195
|
+
|
|
196
|
+
// check for beginning of read segment
|
|
197
|
+
if ( genomePosition == CurrentPosition && isNewReadSegment )
|
|
198
|
+
pileupAlignment.IsSegmentBegin = true;
|
|
199
|
+
|
|
200
|
+
// if we're at the end of a match operation
|
|
201
|
+
if ( genomePosition + (int)op.Length - 1 == CurrentPosition ) {
|
|
202
|
+
|
|
203
|
+
// if not last operation
|
|
204
|
+
if ( i < numCigarOps - 1 ) {
|
|
205
|
+
|
|
206
|
+
// check next CIGAR op
|
|
207
|
+
const CigarOp& nextOp = al.CigarData.at(i+1);
|
|
208
|
+
|
|
209
|
+
// if next CIGAR op is DELETION
|
|
210
|
+
if ( nextOp.Type == 'D') {
|
|
211
|
+
pileupAlignment.IsNextDeletion = true;
|
|
212
|
+
pileupAlignment.DeletionLength = nextOp.Length;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
// if next CIGAR op is INSERTION
|
|
216
|
+
else if ( nextOp.Type == 'I' ) {
|
|
217
|
+
pileupAlignment.IsNextInsertion = true;
|
|
218
|
+
pileupAlignment.InsertionLength = nextOp.Length;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
// if next CIGAR op is either DELETION or INSERTION
|
|
222
|
+
if ( nextOp.Type == 'D' || nextOp.Type == 'I' ) {
|
|
223
|
+
|
|
224
|
+
// if there is a CIGAR op after the DEL/INS
|
|
225
|
+
if ( i < numCigarOps - 2 ) {
|
|
226
|
+
const CigarOp& nextNextOp = al.CigarData.at(i+2);
|
|
227
|
+
|
|
228
|
+
// if next CIGAR op is clipping or ref_skip
|
|
229
|
+
if ( nextNextOp.Type == 'S' ||
|
|
230
|
+
nextNextOp.Type == 'N' ||
|
|
231
|
+
nextNextOp.Type == 'H' )
|
|
232
|
+
pileupAlignment.IsSegmentEnd = true;
|
|
233
|
+
}
|
|
234
|
+
else {
|
|
235
|
+
pileupAlignment.IsSegmentEnd = true;
|
|
236
|
+
|
|
237
|
+
// if next CIGAR op is clipping or ref_skip
|
|
238
|
+
if ( nextOp.Type == 'S' ||
|
|
239
|
+
nextOp.Type == 'N' ||
|
|
240
|
+
nextOp.Type == 'H' )
|
|
241
|
+
pileupAlignment.IsSegmentEnd = true;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
// otherwise
|
|
246
|
+
else {
|
|
247
|
+
|
|
248
|
+
// if next CIGAR op is clipping or ref_skip
|
|
249
|
+
if ( nextOp.Type == 'S' ||
|
|
250
|
+
nextOp.Type == 'N' ||
|
|
251
|
+
nextOp.Type == 'H' )
|
|
252
|
+
pileupAlignment.IsSegmentEnd = true;
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
// else this is last operation
|
|
257
|
+
else pileupAlignment.IsSegmentEnd = true;
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
// increment markers
|
|
262
|
+
genomePosition += op.Length;
|
|
263
|
+
positionInAlignment += op.Length;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
// if op is DELETION
|
|
267
|
+
else if ( op.Type == 'D' ) {
|
|
268
|
+
|
|
269
|
+
// if deletion op overlaps current position
|
|
270
|
+
if ( genomePosition + (int)op.Length > CurrentPosition ) {
|
|
271
|
+
|
|
272
|
+
// set pileup data
|
|
273
|
+
pileupAlignment.IsCurrentDeletion = true;
|
|
274
|
+
pileupAlignment.IsNextDeletion = false;
|
|
275
|
+
pileupAlignment.IsNextInsertion = true;
|
|
276
|
+
pileupAlignment.PositionInAlignment = positionInAlignment + (CurrentPosition - genomePosition);
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
// increment marker
|
|
280
|
+
genomePosition += op.Length;
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
// if op is REF_SKIP
|
|
284
|
+
else if ( op.Type == 'N' ) {
|
|
285
|
+
genomePosition += op.Length;
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
// if op is INSERTION or SOFT_CLIP
|
|
289
|
+
else if ( op.Type == 'I' || op.Type == 'S' ) {
|
|
290
|
+
positionInAlignment += op.Length;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
// checl for beginning of new read segment
|
|
294
|
+
if ( op.Type == 'N' ||
|
|
295
|
+
op.Type == 'S' ||
|
|
296
|
+
op.Type == 'H' )
|
|
297
|
+
isNewReadSegment = true;
|
|
298
|
+
else
|
|
299
|
+
isNewReadSegment = false;
|
|
300
|
+
|
|
301
|
+
// if we've moved beyond current position
|
|
302
|
+
if ( genomePosition > CurrentPosition ) {
|
|
303
|
+
if ( op.Type == 'N' ) saveAlignment = false; // ignore alignment if REF_SKIP
|
|
304
|
+
break;
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
// save pileup position if flag is true
|
|
309
|
+
if ( saveAlignment )
|
|
310
|
+
CurrentPileupData.PileupAlignments.push_back( pileupAlignment );
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
// ---------------------------------------------
|
|
314
|
+
// PileupEngine implementation
|
|
315
|
+
|
|
316
|
+
PileupEngine::PileupEngine(void)
|
|
317
|
+
: d( new PileupEnginePrivate )
|
|
318
|
+
{ }
|
|
319
|
+
|
|
320
|
+
PileupEngine::~PileupEngine(void) {
|
|
321
|
+
delete d;
|
|
322
|
+
d = 0;
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
bool PileupEngine::AddAlignment(const BamAlignment& al) { return d->AddAlignment(al); }
|
|
326
|
+
void PileupEngine::AddVisitor(PileupVisitor* visitor) { d->Visitors.push_back(visitor); }
|
|
327
|
+
void PileupEngine::Flush(void) { d->Flush(); }
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
// ***************************************************************************
|
|
2
|
+
// bamtools_pileup_engine.h (c) 2010 Derek Barnett, Erik Garrison
|
|
3
|
+
// Marth Lab, Department of Biology, Boston College
|
|
4
|
+
// ---------------------------------------------------------------------------
|
|
5
|
+
// Last modified: 18 September 2010
|
|
6
|
+
// ---------------------------------------------------------------------------
|
|
7
|
+
// Provides pileup at position functionality for various tools.
|
|
8
|
+
// ***************************************************************************
|
|
9
|
+
|
|
10
|
+
#ifndef BAMTOOLS_PILEUP_ENGINE_H
|
|
11
|
+
#define BAMTOOLS_PILEUP_ENGINE_H
|
|
12
|
+
|
|
13
|
+
#include <api/BamAlignment.h>
|
|
14
|
+
#include <utils/utils_global.h>
|
|
15
|
+
#include <vector>
|
|
16
|
+
|
|
17
|
+
namespace BamTools {
|
|
18
|
+
|
|
19
|
+
// contains auxiliary data about a single BamAlignment
|
|
20
|
+
// at current position considered
|
|
21
|
+
struct UTILS_EXPORT PileupAlignment {
|
|
22
|
+
|
|
23
|
+
// data members
|
|
24
|
+
BamAlignment Alignment;
|
|
25
|
+
int32_t PositionInAlignment;
|
|
26
|
+
bool IsCurrentDeletion;
|
|
27
|
+
bool IsNextDeletion;
|
|
28
|
+
bool IsNextInsertion;
|
|
29
|
+
int DeletionLength;
|
|
30
|
+
int InsertionLength;
|
|
31
|
+
bool IsSegmentBegin;
|
|
32
|
+
bool IsSegmentEnd;
|
|
33
|
+
|
|
34
|
+
// ctor
|
|
35
|
+
PileupAlignment(const BamAlignment& al)
|
|
36
|
+
: Alignment(al)
|
|
37
|
+
, PositionInAlignment(-1)
|
|
38
|
+
, IsCurrentDeletion(false)
|
|
39
|
+
, IsNextDeletion(false)
|
|
40
|
+
, IsNextInsertion(false)
|
|
41
|
+
, DeletionLength(0)
|
|
42
|
+
, InsertionLength(0)
|
|
43
|
+
, IsSegmentBegin(false)
|
|
44
|
+
, IsSegmentEnd(false)
|
|
45
|
+
{ }
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
// contains all data at a position
|
|
49
|
+
struct UTILS_EXPORT PileupPosition {
|
|
50
|
+
|
|
51
|
+
// data members
|
|
52
|
+
int RefId;
|
|
53
|
+
int Position;
|
|
54
|
+
std::vector<PileupAlignment> PileupAlignments;
|
|
55
|
+
|
|
56
|
+
// ctor
|
|
57
|
+
PileupPosition(const int& refId = 0,
|
|
58
|
+
const int& position = 0,
|
|
59
|
+
const std::vector<PileupAlignment>& alignments = std::vector<PileupAlignment>())
|
|
60
|
+
: RefId(refId)
|
|
61
|
+
, Position(position)
|
|
62
|
+
, PileupAlignments(alignments)
|
|
63
|
+
{ }
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
class UTILS_EXPORT PileupVisitor {
|
|
67
|
+
|
|
68
|
+
public:
|
|
69
|
+
PileupVisitor(void) { }
|
|
70
|
+
virtual ~PileupVisitor(void) { }
|
|
71
|
+
|
|
72
|
+
public:
|
|
73
|
+
virtual void Visit(const PileupPosition& pileupData) =0;
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
class UTILS_EXPORT PileupEngine {
|
|
77
|
+
|
|
78
|
+
public:
|
|
79
|
+
PileupEngine(void);
|
|
80
|
+
~PileupEngine(void);
|
|
81
|
+
|
|
82
|
+
public:
|
|
83
|
+
bool AddAlignment(const BamAlignment& al);
|
|
84
|
+
void AddVisitor(PileupVisitor* visitor);
|
|
85
|
+
void Flush(void);
|
|
86
|
+
|
|
87
|
+
private:
|
|
88
|
+
struct PileupEnginePrivate;
|
|
89
|
+
PileupEnginePrivate* d;
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
} // namespace BamTools
|
|
93
|
+
|
|
94
|
+
#endif // BAMTOOLS_PILEUP_ENGINE_H
|