ct_common
1.0.1
Common library for combinatorial testing
|
00001 //===----- ct_common/common/seed_constraint.h -------------------*- C++ -*-===// 00002 // 00003 // The ct_common Library 00004 // 00005 // This file is distributed under the MIT license. See LICENSE for details. 00006 // 00007 //===----------------------------------------------------------------------===// 00008 // 00009 // This header file contains the class for constraint seeds 00010 // 00011 //===----------------------------------------------------------------------===// 00012 00013 #ifndef CT_COMMON_SEED_CONSTRAINT_H_ 00014 #define CT_COMMON_SEED_CONSTRAINT_H_ 00015 00016 #include <ct_common/common/seed.h> 00017 #include <ct_common/common/constraint.h> 00018 00019 namespace ct { 00020 namespace common { 00021 class DLL_EXPORT Seed_Constraint : public Seed 00022 { 00023 public: 00024 Seed_Constraint(void); 00025 Seed_Constraint(const Seed_Constraint&); 00026 Seed_Constraint &operator = (const Seed_Constraint &right); 00027 virtual ~Seed_Constraint(void); 00028 00029 public: 00030 const boost::shared_ptr<Constraint> &get_constraint(void) const { return this->constraint_; } 00031 boost::shared_ptr<Constraint> &the_constraint(void) { return this->constraint_; } 00032 virtual EvalType_Bool IsMatch(const Assignment &assignment, const std::vector<boost::shared_ptr<ParamSpec> > ¶mspecs); 00033 00034 private: 00035 boost::shared_ptr<Constraint> constraint_; 00036 }; 00037 } // namespace common 00038 } // namespace ct 00039 00040 #endif // CT_COMMON_SEED_CONSTRAINT_H_