vdj_pipe
pipeline for processing DNA sequence data
write_value_step.hpp
Go to the documentation of this file.
1 
7 #ifndef WRITE_VALUE_STEP_HPP_
8 #define WRITE_VALUE_STEP_HPP_
9 #include <string>
10 #include <vector>
11 #include "boost/property_tree/ptree_fwd.hpp"
12 #include "boost/shared_ptr.hpp"
13 #include "vdj_pipe/config.hpp"
15 #include "vdj_pipe/exception.hpp"
17 #include "vdj_pipe/object_ids.hpp"
19 #include "vdj_pipe/value_map.hpp"
20 
21 namespace vdj_pipe{
22 class Value_ids_single;
23 class File_ostream;
24 
27 class VDJ_PIPE_DECL Write_value : public detail::Step_base {
28 public:
29  typedef Value_map vma_type;
30  VDJ_PIPE_STATIC_STRING_METHOD(name, "write_value")
31  VDJ_PIPE_STATIC_STRING_METHOD(category, "misc")
32  VDJ_PIPE_STATIC_STRING_METHOD(
33  comment,
34  "write specified values"
35  )
36  VDJ_PIPE_STATIC_STRING_METHOD(description, "XXX")
37 
39  vma_type const& vma,
40  boost::property_tree::ptree const& pt,
42  );
43 
44  void reset_access(Value_ids_single const& ids) {}
45  void run();
46  void finish() {}
47  void summary(std::ostream& os) const;
48 
49 private:
50  Value_map vma_;
51  std::vector<std::string> v_names_;
52  std::vector<Val_id> v_ids_;
54  std::size_t n_seq_;
55 
56  static std::vector<std::string>
57  get_names(boost::property_tree::ptree const& pt);
58 
59  std::vector<Val_id> get_ids();
60 
61  std::string make_header() const;
62 };
63 
64 }//namespace vdj_pipe
65 #endif /* WRITE_VALUE_STEP_HPP_ */
Select output file based on variables in value map.
Definition: file_ostream_variant.hpp:27
Main namespace of vdj_pipe library.
Definition: sequence_file.hpp:14
Definition: pipe_environment.hpp:26
Definition: step_base.hpp:23
Provides access to standard values for single read pipeline.
Definition: value_names.hpp:33
Definition: write_value_step.hpp:27
Store values mapped against name strings and value IDs.
Definition: value_map.hpp:23