static void create_11188(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=11188");
  node.BrowseName = ToQualifiedName("TreatUncertainAsBad");
  node.Class = NodeClass::Variable;
  node.ParentNodeId = ToNodeId("i=11187");
  node.ReferenceTypeId = ReferenceId::HasProperty;
  node.TypeDefinition = ToNodeId("i=68");
  VariableAttributes attrs;
  attrs.DisplayName = LocalizedText("TreatUncertainAsBad");
  attrs.Type = ObjectId::Boolean;
  attrs.Rank = -1;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
  std::vector<AddReferencesItem> refs;
  {
    AddReferencesItem ref;
    ref.IsForward = true;
    ref.ReferenceTypeId = ReferenceId::HasModellingRule;
    ref.SourceNodeId = ToNodeId("i=11188");
    ref.TargetNodeClass = NodeClass::DataType;
    ref.TargetNodeId = ToNodeId("i=78");
    refs.push_back(ref);
  }
  registry.AddReferences(refs);
}
static void create_11187(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=11187");
  node.BrowseName = ToQualifiedName("AggregateConfigurationType");
  node.Class = NodeClass::ObjectType;
  node.ParentNodeId = ToNodeId("i=58");
  node.ReferenceTypeId = ReferenceId::HasSubtype;
  ObjectTypeAttributes attrs;
  attrs.DisplayName = LocalizedText("AggregateConfigurationType");
  attrs.IsAbstract = false;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
  std::vector<AddReferencesItem> refs;
  {
    AddReferencesItem ref;
    ref.IsForward = true;
    ref.ReferenceTypeId = ReferenceId::HasProperty;
    ref.SourceNodeId = ToNodeId("i=11187");
    ref.TargetNodeClass = NodeClass::DataType;
    ref.TargetNodeId = ToNodeId("i=11188");
    refs.push_back(ref);
  }
  {
    AddReferencesItem ref;
    ref.IsForward = true;
    ref.ReferenceTypeId = ReferenceId::HasProperty;
    ref.SourceNodeId = ToNodeId("i=11187");
    ref.TargetNodeClass = NodeClass::DataType;
    ref.TargetNodeId = ToNodeId("i=11189");
    refs.push_back(ref);
  }
  {
    AddReferencesItem ref;
    ref.IsForward = true;
    ref.ReferenceTypeId = ReferenceId::HasProperty;
    ref.SourceNodeId = ToNodeId("i=11187");
    ref.TargetNodeClass = NodeClass::DataType;
    ref.TargetNodeId = ToNodeId("i=11190");
    refs.push_back(ref);
  }
  {
    AddReferencesItem ref;
    ref.IsForward = true;
    ref.ReferenceTypeId = ReferenceId::HasProperty;
    ref.SourceNodeId = ToNodeId("i=11187");
    ref.TargetNodeClass = NodeClass::DataType;
    ref.TargetNodeId = ToNodeId("i=11191");
    refs.push_back(ref);
  }
  registry.AddReferences(refs);
}
static void create_11426(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=11426");
  node.BrowseName = ToQualifiedName("StandardDeviationSample");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the standard deviation for the interval for a sample of the population (n-1).");
  attrs.DisplayName = LocalizedText("StandardDeviationSample");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_11292(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=11292");
  node.BrowseName = ToQualifiedName("WorstQuality2");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the worst StatusCode of data in the interval including the Simple Bounding Values.");
  attrs.DisplayName = LocalizedText("WorstQuality2");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_2363(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=2363");
  node.BrowseName = ToQualifiedName("PercentBad");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the percent of data (0 to 100) in the interval which has a bad StatusCode.");
  attrs.DisplayName = LocalizedText("PercentBad");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_2361(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=2361");
  node.BrowseName = ToQualifiedName("DurationBad");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the total duration of time in the interval during which the data is bad.");
  attrs.DisplayName = LocalizedText("DurationBad");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_11507(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=11507");
  node.BrowseName = ToQualifiedName("DeltaBounds");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the difference between the StartBound and EndBound value in the interval.");
  attrs.DisplayName = LocalizedText("DeltaBounds");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_2355(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=2355");
  node.BrowseName = ToQualifiedName("NumberOfTransitions");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the number of changes between zero and non-zero that a Boolean or Numeric value experienced in the interval.");
  attrs.DisplayName = LocalizedText("NumberOfTransitions");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_2352(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=2352");
  node.BrowseName = ToQualifiedName("Count");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the number of raw values over the interval.");
  attrs.DisplayName = LocalizedText("Count");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_11308(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=11308");
  node.BrowseName = ToQualifiedName("DurationInStateNonZero");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the time a Boolean or numeric was in a non-zero state using Simple Bounding Values.");
  attrs.DisplayName = LocalizedText("DurationInStateNonZero");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_11306(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=11306");
  node.BrowseName = ToQualifiedName("MaximumActualTime2");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the maximum value with the actual timestamp including the Simple Bounding Values.");
  attrs.DisplayName = LocalizedText("MaximumActualTime2");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_2349(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=2349");
  node.BrowseName = ToQualifiedName("MaximumActualTime");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the maximum value in the interval and the Timestamp of the maximum value.");
  attrs.DisplayName = LocalizedText("MaximumActualTime");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_2344(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=2344");
  node.BrowseName = ToQualifiedName("Total");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the total (time integral) of the data over the interval using Interpolated Bounding Values.");
  attrs.DisplayName = LocalizedText("Total");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_11429(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=11429");
  node.BrowseName = ToQualifiedName("VariancePopulation");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the variance for the interval as calculated by the StandardDeviationPopulation which includes Simple Bounding Values.");
  attrs.DisplayName = LocalizedText("VariancePopulation");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_11506(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=11506");
  node.BrowseName = ToQualifiedName("EndBound");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("Retrieve the value at the end of the interval using Simple Bounding Values.");
  attrs.DisplayName = LocalizedText("EndBound");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
static void create_2341(OpcUa::NodeManagementServices & registry)
{
  AddNodesItem node;
  node.RequestedNewNodeId = ToNodeId("i=2341");
  node.BrowseName = ToQualifiedName("Interpolative");
  node.Class = NodeClass::Object;
  node.TypeDefinition = ToNodeId("i=2340");
  ObjectAttributes attrs;
  attrs.Description = LocalizedText("At the beginning of each interval, retrieve the calculated value from the data points on either side of the requested timestamp.");
  attrs.DisplayName = LocalizedText("Interpolative");
  attrs.EventNotifier = 0;
  node.Attributes = attrs;
  registry.AddNodes(std::vector<AddNodesItem> {node});
}
Exemplo n.º 17
0
 Node UaServer::GetNode(const std::string& nodeid) const
 {
   return GetNode(ToNodeId(nodeid));
 }