LocARNA-1.8.11
ext_rna_data.hh
1 #ifndef LOCARNA_EXT_RNA_DATA_HH
2 #define LOCARNA_EXT_RNA_DATA_HH
3 
4 #ifdef HAVE_CONFIG_H
5 # include <config.h>
6 #endif
7 
8 #include <iosfwd>
9 #include "aux.hh"
10 #include "sparse_matrix.hh"
11 #include "rna_data.hh"
12 
13 namespace LocARNA {
14 
15  class RnaEnsemble;
16  class ExtRnaDataImpl;
17  class PFoldParams;
18 
34  class ExtRnaData: public RnaData {
35  private:
36  friend class ExtRnaDataImpl;
37  ExtRnaDataImpl *ext_pimpl_;
38  public:
51  ExtRnaData(const RnaEnsemble &rna_ensemble,
52  double p_bpcut,
53  double p_bpilcut,
54  double p_uilcut,
55  double max_bps_length_ratio,
56  double max_uil_length_ratio,
57  double max_bpil_length_ratio,
58  const PFoldParams &pfoldparams);
59 
72  ExtRnaData(const std::string &filename,
73  double p_bpcut,
74  double p_bpilcut,
75  double p_uilcut,
76  double max_bps_length_ratio,
77  double max_uil_length_ratio,
78  double max_bpil_length_ratio,
79  const PFoldParams &pfoldparams);
80 
81  private:
85  ExtRnaData(const ExtRnaData &);
86  public:
87 
91  ~ExtRnaData();
92 
93  private:
97  ExtRnaData &
98  operator =(const ExtRnaData &);
99  public:
100 
105  double
106  arc_in_loop_cutoff_prob() const;
107 
118  double
120 
129  double
130  arc_external_prob(pos_type i, pos_type j) const;
131 
132 
137  double
139 
149  double
151 
159  double
161 
162 
170  std::ostream &
171  write_size_info(std::ostream &out) const;
172 
173 
174  // IO
189  std::ostream &
190  write_pp(std::ostream &out,
191  double p_outbpcut=0,
192  double p_outbpilcut=0,
193  double p_outuilcut=0) const;
194 
195  protected:
196 
204  virtual
205  std::istream &
206  read_pp(std::istream &in);
207 
217  virtual
218  void
220  bool stacking);
221 
233  virtual
234  void
235  init_from_rna_ensemble(const RnaEnsemble &rna_ensemble,
236  const PFoldParams &pfoldparams);
237 
246  virtual
247  bool
248  inloopprobs_ok() const;
249 
250  }; // end class ExtRnaData
251 
252 }
253 
254 #endif // LOCARNA_EXT_RNA_DATA_HH
represent sparsified data of RNA ensemble
Definition: rna_data.hh:42
double arc_external_prob(pos_type i, pos_type j) const
Get base pair in loop probability.
Definition: rna_data.cc:807
std::ostream & write_pp(std::ostream &out, double p_outbpcut=0, double p_outbpilcut=0, double p_outuilcut=0) const
Definition: rna_data.cc:1268
size_type pos_type
type of a sequence position
Definition: aux.hh:97
virtual void init_from_rna_ensemble(const RnaEnsemble &rna_ensemble, const PFoldParams &pfoldparams)
initialize from rna ensemble
Definition: rna_data.cc:521
represent sparsified data of RNA ensemble extended by in loop probabilities
Definition: ext_rna_data.hh:34
double arc_in_loop_prob(pos_type i, pos_type j, pos_type p, pos_type q) const
Get base pair in loop probability.
Definition: rna_data.cc:801
virtual std::istream & read_pp(std::istream &in)
Definition: rna_data.cc:1048
Definition: aligner.cc:17
Implementation of ExtRnaData.
Definition: ext_rna_data_impl.hh:22
~ExtRnaData()
destructor
Definition: rna_data.cc:221
std::ostream & write_size_info(std::ostream &out) const
Write object size information.
Definition: rna_data.cc:1475
virtual bool inloopprobs_ok() const
check in loop probabilities
Definition: rna_data.cc:710
double unpaired_external_prob(pos_type k) const
Get base pair in loop probability.
Definition: rna_data.cc:824
Parameters for partition folding.
Definition: pfold_params.hh:19
double arc_in_loop_cutoff_prob() const
Get base pair in loop cutoff probability.
Definition: rna_data.cc:796
ExtRnaData(const RnaEnsemble &rna_ensemble, double p_bpcut, double p_bpilcut, double p_uilcut, double max_bps_length_ratio, double max_uil_length_ratio, double max_bpil_length_ratio, const PFoldParams &pfoldparams)
Construct from RnaEnsemble with cutoff probability.
Definition: rna_data.cc:194
double unpaired_in_loop_cutoff_prob() const
Get unpaired base in loop cutoff probability.
Definition: rna_data.cc:813
Represents the raw structure ensemble data for an RNA.
Definition: rna_ensemble.hh:40
Annotation of a sequence.
Definition: sequence_annotation.hh:24
virtual void init_from_fixed_structure(const SequenceAnnotation &structure, bool stacking)
initialize from fixed structure
Definition: rna_data.cc:417
double unpaired_in_loop_prob(pos_type k, pos_type p, pos_type q) const
Get base pair in loop probability.
Definition: rna_data.cc:818