00001 #ifndef DEF_DEFAULT_CONTAINERS 00002 #define DEF_DEFAULT_CONTAINERS 00003 #include "trivial_container.h" 00004 #include <list> 00005 00006 00007 namespace groupindex 00008 { 00009 00015 template <class Group, class GList> 00016 class default_group_container 00017 { 00018 00019 public: 00020 00027 typedef trivial_container<Group> stabilizer_container; 00028 00034 typedef std::list<ListTupel<Group> > result_container; 00035 00036 }; 00037 00043 template <class Set> 00044 class default_set_container 00045 { 00046 00047 public: 00048 00053 typedef trivial_container<Set> representation_container; 00054 00058 typedef std::list<Set> query_container; 00059 00060 }; 00061 00071 template <class Group> 00072 class nonregular_group_container 00073 { 00074 00075 public: 00076 00077 00082 typedef ac_list<Group> stabilizer_container; 00083 00084 typedef std::list<ListTupel<Group> > result_container; 00085 00086 }; 00087 00097 template<class Group, class Set, class GList> 00098 class fuzzy_set_container 00099 { 00100 00101 public: 00102 00103 typedef std::list<Set> representation_container; 00104 00108 typedef std::list<Set> query_container; 00109 00110 }; 00111 00124 template <class Group, class Set, class GList> 00125 class nonregular_fuzzy_container 00126 { 00127 00128 public: 00129 00130 typedef ac_list<Group> stabilizer_container; 00131 00132 typedef std::list<ListTupel<Group> > result_container; 00133 00134 typedef std::list<Set> representation_container; 00135 00136 }; 00137 00138 00139 } 00140 00141 #endif