diff options
author | Marius Kintel <marius@kintel.net> | 2011-12-26 20:20:05 (GMT) |
---|---|---|
committer | Marius Kintel <marius@kintel.net> | 2011-12-26 20:20:05 (GMT) |
commit | cde24f681580f8911ac4fe29265b169a0bac5f49 (patch) | |
tree | b426b377e367a50b406bad51a0dbb76510278102 /src/csgtermnormalizer.h | |
parent | 36056e27f34a6049c18e49d5f24bfbd7cc6eabf4 (diff) | |
parent | bc3454f369a21cd689f42f5e9ec5cb316f9ebdd5 (diff) |
Merge branch 'master' into buildfix
Diffstat (limited to 'src/csgtermnormalizer.h')
-rw-r--r-- | src/csgtermnormalizer.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/csgtermnormalizer.h b/src/csgtermnormalizer.h new file mode 100644 index 0000000..df37441 --- /dev/null +++ b/src/csgtermnormalizer.h @@ -0,0 +1,22 @@ +#ifndef CSGTERMNORMALIZER_H_ +#define CSGTERMNORMALIZER_H_ + +#include "memory.h" + +class CSGTermNormalizer +{ +public: + CSGTermNormalizer() : counter(0) {} + ~CSGTermNormalizer() {} + + shared_ptr<class CSGTerm> normalize(const shared_ptr<CSGTerm> &term); + +private: + shared_ptr<CSGTerm> normalizePass(shared_ptr<CSGTerm> term) ; + bool normalize_tail(shared_ptr<CSGTerm> &term); + int count(const shared_ptr<CSGTerm> &term) const; + + int counter; +}; + +#endif |