#include <address_space_internal.h>
Public Member Functions | |
uint32_t | AddDataChangeCallback (const NodeId &node, AttributeId attribute, std::function< Server::DataChangeCallback > callback) |
Add callback which will be called when values of attribute is changed. | |
virtual std::vector < AddNodesResult > | AddNodes (const std::vector< AddNodesItem > &items) |
virtual std::vector< StatusCode > | AddReferences (const std::vector< AddReferencesItem > &items) |
AddressSpaceInMemory (bool debug) | |
virtual std::vector< BrowseResult > | Browse (const OpcUa::NodesQuery &query) const |
virtual std::vector< BrowseResult > | BrowseNext () const |
virtual std::vector < OpcUa::CallMethodResult > | Call (std::vector< OpcUa::CallMethodRequest > methodsToCall) |
void | DeleteDataChangeCallback (uint32_t serverhandle) |
Delete data change callback assosioated with handle. | |
virtual std::vector< DataValue > | Read (const ReadParameters ¶ms) const |
virtual std::vector< NodeId > | RegisterNodes (const std::vector< NodeId > ¶ms) const |
void | SetMethod (const NodeId &node, std::function< std::vector< OpcUa::Variant >(std::vector< OpcUa::Variant > arguments)> callback) |
Set method function for a method node. | |
StatusCode | SetValueCallback (const NodeId &node, AttributeId attribute, std::function< DataValue(void)> callback) |
Set callback which will be called to read new value of the attribue. | |
virtual std::vector < BrowsePathResult > | TranslateBrowsePathsToNodeIds (const TranslateBrowsePathsParameters ¶ms) const |
virtual void | UnregisterNodes (const std::vector< NodeId > ¶ms) const |
virtual std::vector< StatusCode > | Write (const std::vector< OpcUa::WriteValue > &values) |
~AddressSpaceInMemory () | |
Private Member Functions | |
AddNodesResult | AddNode (const AddNodesItem &item) |
StatusCode | AddReference (const AddReferencesItem &item) |
CallMethodResult | CallMethod (CallMethodRequest method) |
std::tuple< bool, NodeId > | FindElementInNode (const NodeId &nodeid, const RelativePathElement &element) const |
NodeId | GetNewNodeId (const NodeId &id) |
DataValue | GetValue (const NodeId &node, AttributeId attribute) const |
bool | IsSuitableReference (const BrowseDescription &desc, const ReferenceDescription &reference) const |
bool | IsSuitableReferenceType (const ReferenceDescription &reference, const NodeId &typeId, bool includeSubtypes) const |
std::vector< NodeId > | SelectNodesHierarchy (std::vector< NodeId > sourceNodes) const |
StatusCode | SetValue (const NodeId &node, AttributeId attribute, const DataValue &data) |
BrowsePathResult | TranslateBrowsePath (const BrowsePath &browsepath) const |
Private Attributes | |
ClientIdToAttributeMapType | ClientIdToAttributeMap |
std::atomic< uint32_t > | DataChangeCallbackHandle |
boost::shared_mutex | DbMutex |
bool | Debug = false |
uint32_t | DefaultIdx = 2 |
uint32_t | MaxNodeIdNum = 2000 |
NodesMap | Nodes |
Definition at line 80 of file address_space_internal.h.
Definition at line 28 of file address_space_internal.cpp.
Definition at line 47 of file address_space_internal.cpp.
uint32_t OpcUa::Internal::AddressSpaceInMemory::AddDataChangeCallback | ( | const NodeId & | node, |
AttributeId | attribute, | ||
std::function< Server::DataChangeCallback > | callback | ||
) |
Add callback which will be called when values of attribute is changed.
Definition at line 246 of file address_space_internal.cpp.
AddNodesResult OpcUa::Internal::AddressSpaceInMemory::AddNode | ( | const AddNodesItem & | item | ) | [private] |
Definition at line 452 of file address_space_internal.cpp.
std::vector< AddNodesResult > OpcUa::Internal::AddressSpaceInMemory::AddNodes | ( | const std::vector< AddNodesItem > & | items | ) | [virtual] |
Implements OpcUa::NodeManagementServices.
Definition at line 51 of file address_space_internal.cpp.
StatusCode OpcUa::Internal::AddressSpaceInMemory::AddReference | ( | const AddReferencesItem & | item | ) | [private] |
Definition at line 528 of file address_space_internal.cpp.
std::vector< StatusCode > OpcUa::Internal::AddressSpaceInMemory::AddReferences | ( | const std::vector< AddReferencesItem > & | items | ) | [virtual] |
Implements OpcUa::NodeManagementServices.
Definition at line 63 of file address_space_internal.cpp.
std::vector< BrowseResult > OpcUa::Internal::AddressSpaceInMemory::Browse | ( | const OpcUa::NodesQuery & | query | ) | const [virtual] |
Implements OpcUa::ViewServices.
Definition at line 88 of file address_space_internal.cpp.
std::vector< BrowseResult > OpcUa::Internal::AddressSpaceInMemory::BrowseNext | ( | ) | const [virtual] |
Implements OpcUa::ViewServices.
Definition at line 122 of file address_space_internal.cpp.
std::vector< OpcUa::CallMethodResult > OpcUa::Internal::AddressSpaceInMemory::Call | ( | std::vector< OpcUa::CallMethodRequest > | methodsToCall | ) | [virtual] |
Definition at line 322 of file address_space_internal.cpp.
CallMethodResult OpcUa::Internal::AddressSpaceInMemory::CallMethod | ( | CallMethodRequest | method | ) | [private] |
Definition at line 332 of file address_space_internal.cpp.
void OpcUa::Internal::AddressSpaceInMemory::DeleteDataChangeCallback | ( | uint32_t | serverhandle | ) | [virtual] |
Delete data change callback assosioated with handle.
Implements OpcUa::Server::AddressSpace.
Definition at line 271 of file address_space_internal.cpp.
std::tuple< bool, NodeId > OpcUa::Internal::AddressSpaceInMemory::FindElementInNode | ( | const NodeId & | nodeid, |
const RelativePathElement & | element | ||
) | const [private] |
Definition at line 172 of file address_space_internal.cpp.
NodeId OpcUa::Internal::AddressSpaceInMemory::GetNewNodeId | ( | const NodeId & | id | ) | [private] |
Definition at line 567 of file address_space_internal.cpp.
DataValue OpcUa::Internal::AddressSpaceInMemory::GetValue | ( | const NodeId & | node, |
AttributeId | attribute | ||
) | const [private] |
Definition at line 215 of file address_space_internal.cpp.
bool OpcUa::Internal::AddressSpaceInMemory::IsSuitableReference | ( | const BrowseDescription & | desc, |
const ReferenceDescription & | reference | ||
) | const [private] |
Definition at line 394 of file address_space_internal.cpp.
bool OpcUa::Internal::AddressSpaceInMemory::IsSuitableReferenceType | ( | const ReferenceDescription & | reference, |
const NodeId & | typeId, | ||
bool | includeSubtypes | ||
) | const [private] |
Definition at line 417 of file address_space_internal.cpp.
std::vector< DataValue > OpcUa::Internal::AddressSpaceInMemory::Read | ( | const ReadParameters & | params | ) | const [virtual] |
Implements OpcUa::AttributeServices.
Definition at line 143 of file address_space_internal.cpp.
std::vector< NodeId > OpcUa::Internal::AddressSpaceInMemory::RegisterNodes | ( | const std::vector< NodeId > & | params | ) | const [virtual] |
Implements OpcUa::ViewServices.
Definition at line 129 of file address_space_internal.cpp.
std::vector< NodeId > OpcUa::Internal::AddressSpaceInMemory::SelectNodesHierarchy | ( | std::vector< NodeId > | sourceNodes | ) | const [private] |
Definition at line 428 of file address_space_internal.cpp.
void OpcUa::Internal::AddressSpaceInMemory::SetMethod | ( | const NodeId & | node, |
std::function< std::vector< OpcUa::Variant >(std::vector< OpcUa::Variant > arguments)> | callback | ||
) |
Set method function for a method node.
Definition at line 312 of file address_space_internal.cpp.
StatusCode OpcUa::Internal::AddressSpaceInMemory::SetValue | ( | const NodeId & | node, |
AttributeId | attribute, | ||
const DataValue & | data | ||
) | [private] |
Definition at line 372 of file address_space_internal.cpp.
StatusCode OpcUa::Internal::AddressSpaceInMemory::SetValueCallback | ( | const NodeId & | node, |
AttributeId | attribute, | ||
std::function< DataValue(void)> | callback | ||
) | [virtual] |
Set callback which will be called to read new value of the attribue.
Implements OpcUa::Server::AddressSpace.
Definition at line 297 of file address_space_internal.cpp.
BrowsePathResult OpcUa::Internal::AddressSpaceInMemory::TranslateBrowsePath | ( | const BrowsePath & | browsepath | ) | const [private] |
Definition at line 189 of file address_space_internal.cpp.
std::vector< BrowsePathResult > OpcUa::Internal::AddressSpaceInMemory::TranslateBrowsePathsToNodeIds | ( | const TranslateBrowsePathsParameters & | params | ) | const [virtual] |
Implements OpcUa::ViewServices.
Definition at line 75 of file address_space_internal.cpp.
void OpcUa::Internal::AddressSpaceInMemory::UnregisterNodes | ( | const std::vector< NodeId > & | params | ) | const [virtual] |
Implements OpcUa::ViewServices.
Definition at line 136 of file address_space_internal.cpp.
std::vector< StatusCode > OpcUa::Internal::AddressSpaceInMemory::Write | ( | const std::vector< OpcUa::WriteValue > & | values | ) | [virtual] |
Implements OpcUa::AttributeServices.
Definition at line 155 of file address_space_internal.cpp.
Definition at line 131 of file address_space_internal.h.
std::atomic<uint32_t> OpcUa::Internal::AddressSpaceInMemory::DataChangeCallbackHandle [private] |
Definition at line 134 of file address_space_internal.h.
boost::shared_mutex OpcUa::Internal::AddressSpaceInMemory::DbMutex [mutable, private] |
Definition at line 129 of file address_space_internal.h.
bool OpcUa::Internal::AddressSpaceInMemory::Debug = false [private] |
Definition at line 128 of file address_space_internal.h.
uint32_t OpcUa::Internal::AddressSpaceInMemory::DefaultIdx = 2 [private] |
Definition at line 133 of file address_space_internal.h.
uint32_t OpcUa::Internal::AddressSpaceInMemory::MaxNodeIdNum = 2000 [private] |
Definition at line 132 of file address_space_internal.h.
Definition at line 130 of file address_space_internal.h.