8 std::vector<float> read_depth;
12 class WiggleProcessor {
14 virtual ~WiggleProcessor() {}
15 virtual void process(const Wiggle& wiggle) = 0;
18 class UCSCWiggleTrackWriter : public WiggleProcessor {
20 UCSCWiggleTrackWriter(const std::string& output_filename,
21 const std::string& track_name);
23 ~UCSCWiggleTrackWriter();
25 void process(const Wiggle& wiggle);
31 class ReadDepthWriter : public WiggleProcessor {
33 ReadDepthWriter(std::ostream& stream);
35 void process(const Wiggle& wiggle);
38 std::ostream& stream_;
41 void build_wiggles(const std::string& bam_filename,
42 WiggleProcessor& processor);