codac
codac_CtcEval.h
Go to the documentation of this file.
1 
12 #ifndef __CODAC_CTCEVAL_H__
13 #define __CODAC_CTCEVAL_H__
14 
15 #include "codac_DynCtc.h"
16 
17 namespace codac
18 {
26  class CtcEval : public DynCtc
27  {
28  public:
29 
33  CtcEval();
34 
35  /*
36  * \brief Contracts a set of abstract domains
37  *
38  * This method makes the contractor available in the CN framework.
39  *
40  * \param v_domains vector of Domain pointers
41  */
42  void contract(std::vector<Domain*>& v_domains);
43 
51  void enable_time_propag(bool enable_propagation);
52 
64  void contract(double t, Interval& z, Tube& y, Tube& w);
65 
77  void contract(Interval& t, Interval& z, Tube& y, Tube& w);
78 
90  void contract(double t, IntervalVector& z, TubeVector& y, TubeVector& w);
91 
103  void contract(Interval& t, IntervalVector& z, TubeVector& y, TubeVector& w);
104 
113  void contract(Interval& t, Interval& z, const Tube& y);
114 
123  void contract(Interval& t, IntervalVector& z, const TubeVector& y);
124 
125  protected:
126 
127  bool m_propagation_enabled = true;
128 
129  static const std::string m_ctc_name;
130  static std::vector<std::string> m_str_expected_doms;
131  friend class ContractorNetwork;
132  };
133 }
134 
135 #endif
FixPoint of a separator The fixpoint of a separator is computed by calling the "::"separate function ...
Definition: codac_capd_helpers.h:9
Contractor interface.
Definition: codac_DynCtc.h:60
CtcEval()
Creates a contractor object .
Graph of contractors and domains that model a problem in the constraint programming framework...
Definition: codac_ContractorNetwork.h:48
static const std::string m_ctc_name
class name (mainly used for CN Exceptions)
Definition: codac_CtcEval.h:129
that contracts a tube with respect to its derivative tube and a measurement according to the cons...
Definition: codac_CtcEval.h:26
n-dimensional tube , defined as an interval of n-dimensional trajectories
Definition: codac_TubeVector.h:38
One dimensional tube , defined as an interval of scalar trajectories.
Definition: codac_Tube.h:47
void enable_time_propag(bool enable_propagation)
Enables a forward/backward temporal propagation of the contraction.
static std::vector< std::string > m_str_expected_doms
allowed domains signatures (mainly used for CN Exceptions)
Definition: codac_CtcEval.h:130
bool m_propagation_enabled
if true, a complete temporal propagation will be performed
Definition: codac_CtcEval.h:127