ZeroElementRule.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. #pragma once
  2. #include <string>
  3. #include <vector>
  4. #include "element.h"
  5. #include <map>
  6. using namespace std;
  7. using namespace OTSDATA;
  8. class ZeroElementRule :public xmls::ISlo
  9. {
  10. public:
  11. virtual void Serialize(bool isStoring, tinyxml2::XMLDocument* classDoc, tinyxml2::XMLElement* rootNode) override;
  12. CElementsList GetUsingElementList() const { return m_UsingelementList; }
  13. void SetUsingElementList(CElementsList val) { m_UsingelementList = val; }
  14. std::vector<std::string> GetImgPropertyList() const { return m_ImgPropertyList; }
  15. void SetImgPropertyList(std::vector<std::string> val) { m_ImgPropertyList = val; }
  16. std::vector<std::string> GetOtherpropertyList() const { return m_OtherpropertyList; }
  17. void SetOtherpropertyList(std::vector<std::string> val) { m_OtherpropertyList = val; }
  18. std::vector<std::string> GetUsingConstants() const { return m_usingConstants; }
  19. void SetUsingConstants(std::vector<std::string> val) { m_usingConstants = val; }
  20. std::string GetExpressionStr() const { return m_expressionStr; }
  21. void SetExpressionStr(std::string val) { m_expressionStr = val; }
  22. std::string GetZeroElementName() const { return m_ZeroElementName; }
  23. void SetZeroElementName(std::string val) { m_ZeroElementName = val; }
  24. private:
  25. CElementsList m_UsingelementList;
  26. std::vector<std::string> m_ImgPropertyList;
  27. std::vector<std::string> m_OtherpropertyList;
  28. std::vector<std::string> m_usingConstants;
  29. std::string m_expressionStr;
  30. std::string m_ZeroElementName;
  31. };
  32. typedef std::shared_ptr<ZeroElementRule> ZeroElementRulePtr;
  33. typedef std::vector<ZeroElementRulePtr> ZeroElementRuleList;