OpenMW
apps/opencs/model/filter/valuenode.hpp
Go to the documentation of this file.
00001 #ifndef CSM_FILTER_VALUENODE_H
00002 #define CSM_FILTER_VALUENODE_H
00003 
00004 #include "leafnode.hpp"
00005 
00006 namespace CSMFilter
00007 {
00008     class ValueNode : public LeafNode
00009     {
00010         public:
00011 
00012             enum Type
00013             {
00014                 Type_Closed, Type_Open, Type_Infinite
00015             };
00016 
00017         private:
00018 
00019             int mColumnId;
00020             std::string mText;
00021             double mLower;
00022             double mUpper;
00023             Type mLowerType;
00024             Type mUpperType;
00025 
00026         public:
00027 
00028             ValueNode (int columnId, Type lowerType, Type upperType, double lower, double upper);
00029 
00030             virtual bool test (const CSMWorld::IdTable& table, int row,
00031                 const std::map<int, int>& columns) const;
00034 
00035             virtual std::vector<int> getReferencedColumns() const;
00038 
00039             virtual std::string toString (bool numericColumns) const;
00043     };
00044 }
00045 
00046 #endif