11 #ifndef smtk_attribute_AssociationRules_h
12 #define smtk_attribute_AssociationRules_h
14 #include "smtk/CoreExports.h"
16 #include "smtk/attribute/AssociationRule.h"
17 #include "smtk/attribute/AssociationRuleFactory.h"
29 typedef std::unordered_map<std::string, std::unique_ptr<Rule>> AssociationRuleContainer;
30 typedef std::unordered_map<std::string, std::unique_ptr<Rule>> DissociationRuleContainer;
50 return m_associationRulesForDefinitions;
52 const std::unordered_map<std::string, std::string>& associationRulesForDefinitions()
const
54 return m_associationRulesForDefinitions;
56 std::unordered_map<std::string, std::string>& dissociationRulesForDefinitions()
58 return m_dissociationRulesForDefinitions;
60 const std::unordered_map<std::string, std::string>& dissociationRulesForDefinitions()
const
62 return m_dissociationRulesForDefinitions;
68 const AssociationRuleContainer& associationRuleContainer()
const
70 return m_associationRuleContainer;
72 DissociationRuleContainer& dissociationRuleContainer() {
return m_dissociationRuleContainer; }
73 const DissociationRuleContainer& dissociationRuleContainer()
const
75 return m_dissociationRuleContainer;
82 DissociationRuleFactory& dissociationRuleFactory() {
return m_dissociationRuleFactory; }
83 const DissociationRuleFactory& dissociationRuleFactory()
const
85 return m_dissociationRuleFactory;
89 std::unordered_map<std::string, std::string> m_associationRulesForDefinitions;
90 std::unordered_map<std::string, std::string> m_dissociationRulesForDefinitions;
92 AssociationRuleContainer m_associationRuleContainer;
93 DissociationRuleContainer m_dissociationRuleContainer;
95 AssociationRuleFactory m_associationRuleFactory;
96 DissociationRuleFactory m_dissociationRuleFactory;