00001 // -*- c++ -*- 00002 //***************************************************************************** 00014 //***************************************************************************** 00015 00016 #ifndef polybori_groebner_SetAssociatedMinimal_h_ 00017 #define polybori_groebner_SetAssociatedMinimal_h_ 00018 00019 // include basic definitions 00020 #include "groebner_defs.h" 00021 00022 #include "PolyEntryVector.h" 00023 00024 BEGIN_NAMESPACE_PBORIGB 00025 00031 template <class KeyType, bool Value> 00032 class SetAssociatedMinimal { 00033 public: 00034 SetAssociatedMinimal(PolyEntryVector& strat): m_strat(strat) {} 00035 00036 void operator()(const KeyType& key) const { 00037 m_strat(key).minimal = Value; 00038 } 00039 00040 private: 00041 PolyEntryVector& m_strat; 00042 }; 00043 END_NAMESPACE_PBORIGB 00044 00045 #endif /* polybori_groebner_SetAssociatedMinimal_h_ */