00001 // 00002 // DO NOT EDIT THIS FILE! 00003 // It is automatically generated from opcfoundation.org schemas. 00004 // 00005 00006 #pragma once 00007 00008 inline AttributeId GetAttributeIdOptionValue(const po::variables_map& vm) 00009 { 00010 const std::string name = vm[OPTION_ATTRIBUTE].as<std::string>(); 00011 if (name == "node id") 00012 { 00013 return AttributeId::NodeId; 00014 } 00015 if (name == "node class") 00016 { 00017 return AttributeId::NodeClass; 00018 } 00019 if (name == "browse name") 00020 { 00021 return AttributeId::BrowseName; 00022 } 00023 if (name == "display name") 00024 { 00025 return AttributeId::DisplayName; 00026 } 00027 if (name == "description") 00028 { 00029 return AttributeId::Description; 00030 } 00031 if (name == "write mask") 00032 { 00033 return AttributeId::WriteMask; 00034 } 00035 if (name == "user write mask") 00036 { 00037 return AttributeId::UserWriteMask; 00038 } 00039 if (name == "is abstract") 00040 { 00041 return AttributeId::IsAbstract; 00042 } 00043 if (name == "symmetric") 00044 { 00045 return AttributeId::Symmetric; 00046 } 00047 if (name == "inverse name") 00048 { 00049 return AttributeId::InverseName; 00050 } 00051 if (name == "contains no loops") 00052 { 00053 return AttributeId::ContainsNoLoops; 00054 } 00055 if (name == "event notifier") 00056 { 00057 return AttributeId::EventNotifier; 00058 } 00059 if (name == "value") 00060 { 00061 return AttributeId::Value; 00062 } 00063 if (name == "data type") 00064 { 00065 return AttributeId::DataType; 00066 } 00067 if (name == "value rank") 00068 { 00069 return AttributeId::ValueRank; 00070 } 00071 if (name == "array dimensions") 00072 { 00073 return AttributeId::ArrayDimensions; 00074 } 00075 if (name == "access level") 00076 { 00077 return AttributeId::AccessLevel; 00078 } 00079 if (name == "user access level") 00080 { 00081 return AttributeId::UserAccessLevel; 00082 } 00083 if (name == "minimum sampling interval") 00084 { 00085 return AttributeId::MinimumSamplingInterval; 00086 } 00087 if (name == "historizing") 00088 { 00089 return AttributeId::Historizing; 00090 } 00091 if (name == "executable") 00092 { 00093 return AttributeId::Executable; 00094 } 00095 if (name == "user executable") 00096 { 00097 return AttributeId::UserExecutable; 00098 } 00099 00100 throw std::logic_error(std::string("Unknown AttributeId: ") + name); 00101 }; 00102