00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 #include <opc/ua/protocol/attribute_ids.h> 00012 #include <opc/ua/protocol/types.h> 00013 #include <opc/ua/protocol/variant.h> 00014 #include <opc/ua/protocol/data_value.h> 00015 00016 #include <string> 00017 00018 namespace OpcUa 00019 { 00020 00021 class CommandLine 00022 { 00023 public: 00024 CommandLine(int argc, char** argv); 00025 00026 std::string GetServerURI() const 00027 { 00028 return ServerURI; 00029 } 00030 00031 NodeId GetNodeId() const 00032 { 00033 return Node; 00034 } 00035 00036 uint16_t GetNamespaceIndex() const 00037 { 00038 return NamespaceIndex; 00039 } 00040 00041 Variant GetValue() const 00042 { 00043 return Value; 00044 } 00045 00046 AttributeId GetAttribute() const 00047 { 00048 return Attribute; 00049 } 00050 00051 std::string GetModuleId() const 00052 { 00053 return ModuleId; 00054 } 00055 00056 std::string GetModulePath() const 00057 { 00058 return ModulePath; 00059 } 00060 00061 std::string GetConfigDir() const 00062 { 00063 return ConfigDir; 00064 } 00065 00066 bool IsGetEndpointsOperation() const 00067 { 00068 return IsGetEndpoints; 00069 } 00070 00071 bool IsBrowseOperation() const 00072 { 00073 return IsBrowse; 00074 } 00075 00076 bool IsReadOperation() const 00077 { 00078 return IsRead; 00079 } 00080 00081 bool IsWriteOperation() const 00082 { 00083 return IsWrite; 00084 } 00085 00086 bool IsCreateSubscriptionOperation() const 00087 { 00088 return IsCreateSubscription; 00089 } 00090 00091 bool IsFindServersOperation() const 00092 { 00093 return IsFindServers; 00094 } 00095 00096 bool IsRegisterModuleOperation() const 00097 { 00098 return IsAddModule; 00099 } 00100 00101 bool IsUnregisterModuleOperation() const 00102 { 00103 return IsRemoveModule; 00104 } 00105 00106 bool IsHelpOperation() const 00107 { 00108 return IsHelp; 00109 } 00110 00111 private: 00112 std::string ServerURI; 00113 NodeId Node; 00114 uint16_t NamespaceIndex; 00115 Variant Value; 00116 AttributeId Attribute; 00117 std::string ModuleId; 00118 std::string ModulePath; 00119 std::string ConfigDir; 00120 00121 bool IsHelp; 00122 bool IsGetEndpoints; 00123 bool IsBrowse; 00124 bool IsRead; 00125 bool IsWrite; 00126 bool IsCreateSubscription; 00127 bool IsFindServers; 00128 bool IsAddModule; 00129 bool IsRemoveModule; 00130 }; 00131 00132 } 00133