node-opcua-address-space 2.72.2 → 2.74.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/LICENSE +3 -1
  2. package/dist/source/helpers/argument_list.d.ts +1 -2
  3. package/dist/source/helpers/argument_list.js +1 -29
  4. package/dist/source/helpers/argument_list.js.map +1 -1
  5. package/dist/source/index.d.ts +22 -4
  6. package/dist/source/index.js +28 -7
  7. package/dist/source/index.js.map +1 -1
  8. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +8 -1
  9. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.d.ts +199 -0
  10. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.js +10 -0
  11. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.js.map +1 -0
  12. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.d.ts +14 -0
  13. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.js +3 -0
  14. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.js.map +1 -0
  15. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.d.ts +6 -0
  16. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.js +3 -0
  17. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.js.map +1 -0
  18. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +7 -0
  19. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js +3 -0
  20. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js.map +1 -0
  21. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.d.ts +7 -0
  22. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.js +3 -0
  23. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.js.map +1 -0
  24. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +4 -0
  25. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js +3 -0
  26. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js.map +1 -0
  27. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +9 -0
  28. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js +3 -0
  29. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js.map +1 -0
  30. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +5 -0
  31. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js +3 -0
  32. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js.map +1 -0
  33. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +23 -0
  34. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js +3 -0
  35. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js.map +1 -0
  36. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +32 -0
  37. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js +3 -0
  38. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js.map +1 -0
  39. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +15 -0
  40. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js +3 -0
  41. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js.map +1 -0
  42. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +42 -0
  43. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.js +3 -0
  44. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.js.map +1 -0
  45. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +7 -0
  46. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js +26 -0
  47. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js.map +1 -0
  48. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +5 -0
  49. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js +3 -0
  50. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js.map +1 -0
  51. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +20 -0
  52. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js +3 -0
  53. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js.map +1 -0
  54. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +26 -0
  55. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js +3 -0
  56. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js.map +1 -0
  57. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +10 -0
  58. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js +3 -0
  59. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js.map +1 -0
  60. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +10 -0
  61. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js +3 -0
  62. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js.map +1 -0
  63. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +30 -0
  64. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.js +3 -0
  65. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.js.map +1 -0
  66. package/dist/source/loader/load_nodeset2.js +6 -13
  67. package/dist/source/loader/load_nodeset2.js.map +1 -1
  68. package/dist/source/loader/make_xml_extension_object_parser.js.map +1 -1
  69. package/dist/source/namespace_alarm_and_condition.d.ts +9 -9
  70. package/dist/src/address_space_private.d.ts +1 -1
  71. package/dist/src/alarms_and_conditions/condition.d.ts +2 -2
  72. package/dist/src/alarms_and_conditions/condition.js +4 -6
  73. package/dist/src/alarms_and_conditions/condition.js.map +1 -1
  74. package/dist/src/alarms_and_conditions/condition_info_impl.d.ts +26 -0
  75. package/dist/src/alarms_and_conditions/condition_info_impl.js +55 -0
  76. package/dist/src/alarms_and_conditions/condition_info_impl.js.map +1 -0
  77. package/dist/src/alarms_and_conditions/condition_snapshot_impl.d.ts +231 -0
  78. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js +667 -0
  79. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js.map +1 -0
  80. package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +3 -16
  81. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js.map +1 -1
  82. package/dist/src/alarms_and_conditions/index.d.ts +2 -2
  83. package/dist/src/alarms_and_conditions/index.js +2 -2
  84. package/dist/src/alarms_and_conditions/index.js.map +1 -1
  85. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +5 -25
  86. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +2 -2
  87. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +1 -1
  88. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +4 -35
  89. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +5 -5
  90. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -1
  91. package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +1 -4
  92. package/dist/src/alarms_and_conditions/ua_base_event_impl.js.map +1 -1
  93. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +14 -14
  94. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +5 -2
  95. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +1 -1
  96. package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +4 -38
  97. package/dist/src/alarms_and_conditions/ua_condition_impl.js +9 -9
  98. package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +1 -1
  99. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +3 -7
  100. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +0 -23
  101. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js.map +1 -1
  102. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +4 -8
  103. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +1 -1
  104. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +1 -1
  105. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +1 -1
  106. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +3 -20
  107. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +1 -1
  108. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +2 -1
  109. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +1 -1
  110. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +20 -46
  111. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +13 -13
  112. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js.map +1 -1
  113. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +5 -10
  114. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +1 -1
  115. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +4 -11
  116. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +3 -3
  117. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +1 -1
  118. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +4 -6
  119. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +1 -1
  120. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +2 -1
  121. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +1 -1
  122. package/dist/src/data_access/ua_multistate_value_discrete_impl.d.ts +51 -0
  123. package/dist/src/data_access/ua_multistate_value_discrete_impl.js +250 -0
  124. package/dist/src/data_access/ua_multistate_value_discrete_impl.js.map +1 -0
  125. package/dist/src/data_access/ua_two_state_discrete_impl.d.ts +25 -0
  126. package/dist/src/data_access/ua_two_state_discrete_impl.js +154 -0
  127. package/dist/src/data_access/ua_two_state_discrete_impl.js.map +1 -0
  128. package/dist/src/index_current.d.ts +2 -3
  129. package/dist/src/index_current.js +3 -5
  130. package/dist/src/index_current.js.map +1 -1
  131. package/dist/src/namespace_impl.d.ts +9 -8
  132. package/dist/src/namespace_impl.js +5 -6
  133. package/dist/src/namespace_impl.js.map +1 -1
  134. package/dist/src/nodeset_tools/nodeset_to_xml.js +16 -4
  135. package/dist/src/nodeset_tools/nodeset_to_xml.js.map +1 -1
  136. package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +9 -5
  137. package/dist/src/state_machine/ua_shelving_state_machine_ex.js +5 -5
  138. package/dist/src/state_machine/ua_shelving_state_machine_ex.js.map +1 -1
  139. package/dist/src/ua_data_type_impl.d.ts +2 -2
  140. package/dist/src/ua_data_type_impl.js +3 -0
  141. package/dist/src/ua_data_type_impl.js.map +1 -1
  142. package/dist/src/ua_variable_impl.js.map +1 -1
  143. package/distHelpers/alarms_and_conditions_demo.d.ts +1 -2
  144. package/distHelpers/alarms_and_conditions_demo.js.map +1 -1
  145. package/distHelpers/create_minimalist_address_space_nodeset.js.map +1 -1
  146. package/package.json +38 -38
  147. package/source/helpers/argument_list.ts +2 -36
  148. package/source/index.ts +25 -5
  149. package/source/interfaces/alarms_and_conditions/condition_info_i.ts +9 -1
  150. package/source/interfaces/alarms_and_conditions/condition_snapshot.ts +297 -0
  151. package/source/interfaces/alarms_and_conditions/deviation_stuff.ts +16 -0
  152. package/source/interfaces/alarms_and_conditions/install_setpoint_options.ts +7 -0
  153. package/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.ts +10 -0
  154. package/source/interfaces/alarms_and_conditions/instantiate_condition_options.ts +8 -0
  155. package/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.ts +4 -0
  156. package/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.ts +10 -0
  157. package/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.ts +6 -0
  158. package/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.ts +35 -0
  159. package/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.ts +41 -0
  160. package/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.ts +31 -0
  161. package/source/interfaces/alarms_and_conditions/ua_condition_ex.ts +67 -0
  162. package/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.ts +45 -0
  163. package/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.ts +22 -0
  164. package/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.ts +25 -0
  165. package/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.ts +28 -0
  166. package/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.ts +31 -0
  167. package/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.ts +25 -0
  168. package/source/interfaces/state_machine/ua_shelved_state_machine_ex.ts +32 -0
  169. package/source/loader/load_nodeset2.ts +10 -16
  170. package/source/loader/make_xml_extension_object_parser.ts +2 -2
  171. package/source/namespace_alarm_and_condition.ts +16 -10
  172. package/src/address_space_private.ts +1 -1
  173. package/src/alarms_and_conditions/condition.ts +4 -7
  174. package/src/alarms_and_conditions/{condition_info.ts → condition_info_impl.ts} +3 -9
  175. package/src/alarms_and_conditions/{condition_snapshot.ts → condition_snapshot_impl.ts} +6 -9
  176. package/src/alarms_and_conditions/deviation_alarm_helper.ts +3 -15
  177. package/src/alarms_and_conditions/index.ts +2 -2
  178. package/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +10 -33
  179. package/src/alarms_and_conditions/ua_alarm_condition_impl.ts +12 -50
  180. package/src/alarms_and_conditions/ua_base_event_impl.ts +1 -4
  181. package/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +23 -26
  182. package/src/alarms_and_conditions/ua_condition_impl.ts +17 -65
  183. package/src/alarms_and_conditions/ua_discrete_alarm_impl.ts +3 -50
  184. package/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +7 -22
  185. package/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.ts +1 -1
  186. package/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +3 -24
  187. package/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.ts +2 -1
  188. package/src/alarms_and_conditions/ua_limit_alarm_impl.ts +6 -37
  189. package/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +7 -33
  190. package/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +7 -28
  191. package/src/alarms_and_conditions/ua_off_normal_alarm_impl.ts +4 -6
  192. package/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +2 -1
  193. package/src/data_access/{ua_multistate_value_discrete.ts → ua_multistate_value_discrete_impl.ts} +0 -0
  194. package/src/data_access/{ua_two_state_discrete.ts → ua_two_state_discrete_impl.ts} +0 -0
  195. package/src/index_current.ts +2 -4
  196. package/src/namespace_impl.ts +16 -11
  197. package/src/nodeset_tools/nodeset_to_xml.ts +18 -6
  198. package/src/state_machine/ua_shelving_state_machine_ex.ts +21 -26
  199. package/src/ua_data_type_impl.ts +7 -3
  200. package/src/ua_variable_impl.ts +3 -11
  201. package/test_helpers/alarms_and_conditions_demo.ts +3 -3
  202. package/test_helpers/create_minimalist_address_space_nodeset.ts +2 -2
  203. package/test_helpers/test_fixtures/datatype_with_allow_subtype.xml +104 -0
  204. package/test_helpers/test_fixtures/variabletype_with_value.xml +10 -10
@@ -9,21 +9,18 @@ import { DataValue } from "node-opcua-data-value";
9
9
  import { NodeId, sameNodeId } from "node-opcua-nodeid";
10
10
  import { StatusCodes } from "node-opcua-status-code";
11
11
  import { DataType, VariantOptions } from "node-opcua-variant";
12
- import { UAAlarmCondition_Base } from "node-opcua-nodeset-ua";
12
+ import { UAShelvedStateMachine } from "node-opcua-nodeset-ua";
13
13
  import { BaseNode, INamespace, UAEventType, UAVariable } from "node-opcua-address-space-base";
14
14
 
15
15
  import { _install_TwoStateVariable_machinery } from "../state_machine/ua_two_state_variable";
16
- import { UAShelvedStateMachineEx, _clear_timer_if_any } from "../state_machine/ua_shelving_state_machine_ex";
17
- import { UATwoStateVariableEx } from "../../source/ua_two_state_variable_ex";
16
+ import { UAShelvedStateMachineExImpl, _clear_timer_if_any } from "../state_machine/ua_shelving_state_machine_ex";
18
17
  import { AddressSpacePrivate } from "../address_space_private";
18
+ import { ConditionInfo } from "../../source/interfaces/alarms_and_conditions/condition_info_i";
19
+ import { UAAlarmConditionEx } from "../../source/interfaces/alarms_and_conditions/ua_alarm_condition_ex";
20
+ import { InstantiateAlarmConditionOptions } from "../../source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options";
19
21
 
20
- import { ConditionInfo } from "./condition_info";
21
- import {
22
- UAAcknowledgeableConditionEx,
23
- UAAcknowledgeableConditionHelper,
24
- UAAcknowledgeableConditionImpl
25
- } from "./ua_acknowledgeable_condition_impl";
26
- import { InstantiateConditionOptions } from "./ua_condition_impl";
22
+ import { ConditionInfoImpl } from "./condition_info_impl";
23
+ import { UAAcknowledgeableConditionImpl } from "./ua_acknowledgeable_condition_impl";
27
24
 
28
25
  function _update_suppressedOrShelved(alarmNode: UAAlarmConditionImpl) {
29
26
  alarmNode.suppressedOrShelved.setValueFromSource({
@@ -31,45 +28,10 @@ function _update_suppressedOrShelved(alarmNode: UAAlarmConditionImpl) {
31
28
  value: alarmNode.isSuppressedOrShelved()
32
29
  });
33
30
  }
34
- export interface UAAlarmConditionHelper extends UAAcknowledgeableConditionHelper {
35
- activateAlarm(): void;
36
- deactivateAlarm(retain?: boolean): void;
37
- isSuppressedOrShelved(): boolean;
38
- getSuppressedOrShelved(): boolean;
39
- setMaxTimeShelved(duration: number): void;
40
- getMaxTimeShelved(): number;
41
- getInputNodeNode(): UAVariable | null;
42
- getInputNodeValue(): any | null;
43
- updateState(): void;
44
- getCurrentConditionInfo(): ConditionInfo;
45
-
46
- installInputNodeMonitoring(inputNode: BaseNode | NodeId): void;
47
- }
48
-
49
- export declare interface UAAlarmConditionEx extends UAAlarmConditionHelper, UAAlarmCondition_Base, UAAcknowledgeableConditionEx {
50
- on(eventName: string, eventHandler: any): this;
51
-
52
- enabledState: UATwoStateVariableEx;
53
- activeState: UATwoStateVariableEx;
54
- ackedState: UATwoStateVariableEx;
55
- confirmedState?: UATwoStateVariableEx;
56
-
57
- suppressedState?: UATwoStateVariableEx;
58
-
59
- outOfServiceState?: UATwoStateVariableEx;
60
- shelvingState?: UAShelvedStateMachineEx;
61
- silenceState?: UATwoStateVariableEx;
62
- latchedState?: UATwoStateVariableEx;
63
- }
64
-
65
31
  export declare interface UAAlarmConditionImpl extends UAAlarmConditionEx, UAAcknowledgeableConditionImpl {
66
32
  on(eventName: string, eventHandler: any): this;
67
33
  }
68
34
 
69
- export interface InstantiateAlarmConditionOptions extends InstantiateConditionOptions {
70
- maxTimeShelved?: number;
71
- inputNode: BaseNode | NodeId;
72
- }
73
35
  export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl implements UAAlarmConditionEx {
74
36
  public static MaxDuration = Math.pow(2, 31);
75
37
 
@@ -161,7 +123,7 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
161
123
  * @type ShelvingStateMachine
162
124
  */
163
125
  if (alarmNode.shelvingState) {
164
- UAShelvedStateMachineEx.promote(alarmNode.shelvingState);
126
+ UAShelvedStateMachineExImpl.promote(alarmNode.shelvingState);
165
127
  }
166
128
 
167
129
  // SuppressedOrShelved : Mandatory
@@ -221,7 +183,7 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
221
183
 
222
184
  public dispose(): void {
223
185
  if (this.shelvingState) {
224
- _clear_timer_if_any(this.shelvingState);
186
+ _clear_timer_if_any(this.shelvingState as any as UAShelvedStateMachineExImpl);
225
187
  }
226
188
  super.dispose();
227
189
  }
@@ -403,7 +365,7 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
403
365
  const oldMessage = this.currentBranch().getMessage();
404
366
  const oldRetain = this.currentBranch().getRetain();
405
367
 
406
- const oldConditionInfo = new ConditionInfo({
368
+ const oldConditionInfo = new ConditionInfoImpl({
407
369
  message: oldMessage,
408
370
  quality: oldQuality,
409
371
  retain: oldRetain,
@@ -448,14 +410,14 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
448
410
  oldCondition: ConditionInfo
449
411
  ): ConditionInfo {
450
412
  if (!stateData) {
451
- return new ConditionInfo({
413
+ return new ConditionInfoImpl({
452
414
  message: "Back to normal",
453
415
  quality: StatusCodes.Good,
454
416
  retain: true,
455
417
  severity: 0
456
418
  });
457
419
  } else {
458
- return new ConditionInfo({
420
+ return new ConditionInfoImpl({
459
421
  message: "Condition value is " + value + " and state is " + stateData,
460
422
  quality: StatusCodes.Good,
461
423
  retain: true,
@@ -8,11 +8,8 @@ import { BaseNode } from "node-opcua-address-space-base";
8
8
  import { UABaseEvent_Base, UABaseEvent } from "node-opcua-nodeset-ua";
9
9
 
10
10
  import { UAObjectImpl } from "../ua_object_impl";
11
+ import { UABaseEventHelper } from "../../source/interfaces/alarms_and_conditions/ua_condition_ex";
11
12
 
12
- export interface UABaseEventHelper {
13
- setSourceName(name: string): void;
14
- setSourceNode(node: NodeId | BaseNode): void;
15
- }
16
13
  export interface UABaseEventEx extends UABaseEvent_Base, UABaseEventHelper {}
17
14
  export declare interface UABaseEventImpl extends UABaseEventEx {}
18
15
 
@@ -4,46 +4,43 @@
4
4
  import { Certificate, exploreCertificate, makeSHA1Thumbprint } from "node-opcua-crypto";
5
5
  import { DateTime, minOPCUADate } from "node-opcua-basic-types";
6
6
  import { make_warningLog } from "node-opcua-debug";
7
+ import { NodeId } from "node-opcua-nodeid";
7
8
  import { DataType, VariantOptions } from "node-opcua-variant";
8
- import { UACertificateExpirationAlarm_Base } from "node-opcua-nodeset-ua";
9
- import { INamespace, UAObject } from "node-opcua-address-space-base";
9
+ import { INamespace, UAObject, UAProperty } from "node-opcua-address-space-base";
10
10
  import { ObjectTypeIds } from "node-opcua-constants";
11
- import { AccessRestrictionsFlag, makeAccessLevelExFlag } from "node-opcua-data-model";
11
+ import { makeAccessLevelExFlag } from "node-opcua-data-model";
12
+ import { UACertificateExpirationAlarmEx } from "../../source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex";
13
+ import { InstantiateOffNormalAlarmOptions } from "../../source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options";
12
14
  import { registerNodePromoter } from "../../source/loader/register_node_promoter";
13
- import { InstantiateOffNormalAlarmOptions, UAOffNormalAlarmImpl } from "./ua_off_normal_alarm_impl";
14
15
  import { UASystemOffNormalAlarmImpl } from "./ua_system_off_normal_alarm_impl";
15
16
 
16
17
  const warningLog = make_warningLog("AlarmsAndConditions");
17
18
 
18
- export interface UACertificateExpirationAlarmEx
19
- extends Omit<
20
- UACertificateExpirationAlarm_Base,
21
- | "ackedState"
22
- | "activeState"
23
- | "confirmedState"
24
- | "enabledState"
25
- | "latchedState"
26
- | "limitState"
27
- | "outOfServiceState"
28
- | "shelvingState"
29
- | "silenceState"
30
- | "suppressedState"
31
- > {
32
- getExpirationDate(): DateTime;
33
- setExpirationDate(value: Date): void;
34
- getExpirationLimit(): number;
35
- setExpirationLimit(value: number): void;
36
- setCertificate(certificate: Certificate | null): void;
37
- getCertificate(): Certificate | null;
19
+ export function instantiateCertificateExpirationAlarm(
20
+ namespace: INamespace,
21
+ alarmType: "CertificateExpirationAlarmType",
22
+ options: InstantiateOffNormalAlarmOptions,
23
+ data?: Record<string, VariantOptions>
24
+
25
+ ): UACertificateExpirationAlarmEx {
26
+ return UACertificateExpirationAlarmImpl.instantiate(namespace,alarmType, options, data);
38
27
  }
39
28
 
40
- export declare interface UACertificateExpirationAlarmImpl extends UACertificateExpirationAlarmEx, UASystemOffNormalAlarmImpl {}
29
+
30
+ interface UACertificateExpirationAlarmImpl {
31
+ expirationDate: UAProperty<Date, /*z*/DataType.DateTime>;
32
+ expirationLimit?: UAProperty<number, /*z*/DataType.Double>;
33
+ certificateType: UAProperty<NodeId, /*z*/DataType.NodeId>;
34
+ certificate: UAProperty<Buffer, /*z*/DataType.ByteString>;
35
+ }
41
36
  /**
42
37
  * This UACertificateExpirationAlarm (SystemOffNormalAlarmType) is raised by the Server when the Server’s
43
38
  * Certificate is within the ExpirationLimit
44
39
  * of expiration. This alarm automatically returns to normal when the certificate is updated.
45
40
  */
46
- export class UACertificateExpirationAlarmImpl extends UASystemOffNormalAlarmImpl implements UACertificateExpirationAlarmEx {
41
+ class UACertificateExpirationAlarmImpl extends UASystemOffNormalAlarmImpl implements UACertificateExpirationAlarmEx {
42
+
43
+
47
44
  public static instantiate(
48
45
  namespace: INamespace,
49
46
  alarmType: "CertificateExpirationAlarmType",
@@ -5,7 +5,7 @@
5
5
  import * as chalk from "chalk";
6
6
 
7
7
  import { assert } from "node-opcua-assert";
8
- import { ByteString, UAString, UInt16 } from "node-opcua-basic-types";
8
+ import { ByteString } from "node-opcua-basic-types";
9
9
  import { randomGuid } from "node-opcua-basic-types";
10
10
  import {
11
11
  AttributeIds,
@@ -19,7 +19,7 @@ import {
19
19
  } from "node-opcua-data-model";
20
20
  import { DataValue } from "node-opcua-data-value";
21
21
  import { checkDebugFlag, make_debugLog, make_errorLog } from "node-opcua-debug";
22
- import { minDate } from "node-opcua-factory";
22
+ import { minDate } from "node-opcua-basic-types";
23
23
  import { coerceNodeId, makeNodeId, NodeId, resolveNodeId, sameNodeId } from "node-opcua-nodeid";
24
24
  import { CallbackT, StatusCode, StatusCodes } from "node-opcua-status-code";
25
25
  import { CallMethodResultOptions, TimeZoneDataType } from "node-opcua-types";
@@ -33,69 +33,26 @@ import {
33
33
  UAObject,
34
34
  InstantiateObjectOptions
35
35
  } from "node-opcua-address-space-base";
36
- import { UACondition_Base, UAConditionVariable, UACondition } from "node-opcua-nodeset-ua";
36
+ import { UAConditionVariable } from "node-opcua-nodeset-ua";
37
37
 
38
38
  import { ConditionInfoOptions } from "../../source/interfaces/alarms_and_conditions/condition_info_i";
39
- import { UATwoStateVariableEx } from "../../source/ua_two_state_variable_ex";
39
+ import { UAConditionEx } from "../../source/interfaces/alarms_and_conditions/ua_condition_ex";
40
+ import { ConditionSnapshot } from "../../source/interfaces/alarms_and_conditions/condition_snapshot";
41
+ import { InstantiateConditionOptions } from "../../source/interfaces/alarms_and_conditions/instantiate_condition_options";
42
+
40
43
  import { AddressSpacePrivate } from "../address_space_private";
41
44
  import { _install_TwoStateVariable_machinery } from "../state_machine/ua_two_state_variable";
42
45
  import { UAObjectImpl } from "../ua_object_impl";
43
46
  import { UAVariableImpl } from "../ua_variable_impl";
44
47
  import { UAConditionType } from "../ua_condition_type";
45
- import { UABaseEventHelper, UABaseEventImpl } from "./ua_base_event_impl";
46
- import { ConditionSnapshot } from "./condition_snapshot";
48
+ import { UABaseEventImpl } from "./ua_base_event_impl";
49
+ import { ConditionSnapshotImpl } from "./condition_snapshot_impl";
50
+
47
51
 
48
52
  const debugLog = make_debugLog(__filename);
49
53
  const errorLog = make_errorLog(__filename);
50
54
  const doDebug = checkDebugFlag(__filename);
51
55
 
52
- export type AddCommentEventHandler = (eventId: Buffer | null, comment: LocalizedText, branch: ConditionSnapshot) => void;
53
- export interface UAConditionHelper {
54
- on(eventName: string, eventHandler: (...args: any[]) => void): this;
55
- // -- Events
56
- on(eventName: "addComment", eventHandler: AddCommentEventHandler): this;
57
- on(eventName: "branch_deleted", eventHandler: (branchId: string) => void): this;
58
- }
59
- export interface UAConditionHelper extends UABaseEventHelper {
60
- getBranchCount(): number;
61
- getBranches(): ConditionSnapshot[];
62
- getBranchIds(): NodeId[];
63
- createBranch(): ConditionSnapshot;
64
- deleteBranch(branch: ConditionSnapshot): void;
65
- getEnabledState(): boolean;
66
- getEnabledStateAsString(): string;
67
- setEnabledState(requestedEnabledState: boolean): StatusCode;
68
- setReceiveTime(time: Date): void;
69
- setLocalTime(time: TimeZoneDataType): void;
70
- setTime(time: Date): void;
71
- conditionOfNode(): UAObject | UAVariable | null;
72
- raiseConditionEvent(branch: ConditionSnapshot, renewEventId: boolean): void;
73
- raiseNewCondition(conditionInfo: ConditionInfoOptions): void;
74
- raiseNewBranchState(branch: ConditionSnapshot): void;
75
- currentBranch(): ConditionSnapshot;
76
- }
77
-
78
- export interface UAConditionEx extends UAObject, UACondition_Base, UAConditionHelper {
79
- enabledState: UATwoStateVariableEx;
80
- on(eventName: string, eventHandler: any): this;
81
- //
82
- // conditionClassId: UAProperty<NodeId, /*c*/DataType.NodeId>;
83
- // conditionClassName: UAProperty<LocalizedText, /*c*/DataType.LocalizedText>;
84
- // conditionSubClassId?: UAProperty<NodeId, /*c*/DataType.NodeId>;
85
- // conditionSubClassName?: UAProperty<LocalizedText, /*c*/DataType.LocalizedText>;
86
- // conditionName: UAProperty<UAString, /*c*/DataType.String>;
87
- // branchId: UAProperty<NodeId, /*c*/DataType.NodeId>;
88
- // retain: UAProperty<boolean, /*c*/DataType.Boolean>;
89
- // quality: UAConditionVariable<StatusCode, /*c*/DataType.StatusCode>;
90
- // lastSeverity: UAConditionVariable<UInt16, /*c*/DataType.UInt16>;
91
- // comment: UAConditionVariable<LocalizedText, /*c*/DataType.LocalizedText>;
92
- // clientUserId: UAProperty<UAString, /*c*/DataType.String>;
93
- // disable: UAMethod;
94
- // enable: UAMethod;
95
- // addComment: UAMethod;
96
- // conditionRefresh: UAMethod;
97
- // conditionRefresh2: UAMethod;
98
- }
99
56
  export declare interface UAConditionImpl extends UAConditionEx, UABaseEventImpl {
100
57
  on(eventName: string, eventHandler: any): this;
101
58
  }
@@ -217,7 +174,7 @@ export class UAConditionImpl extends UABaseEventImpl implements UAConditionEx {
217
174
  });
218
175
  return;
219
176
  }
220
- assert(branch instanceof ConditionSnapshot);
177
+ assert(branch instanceof ConditionSnapshotImpl);
221
178
 
222
179
  const statusCode = inner_func(eventId, comment, branch, conditionNode);
223
180
 
@@ -246,8 +203,7 @@ export class UAConditionImpl extends UABaseEventImpl implements UAConditionEx {
246
203
  */
247
204
  public post_initialize(): void {
248
205
  assert(!this._branch0);
249
- this._branch0 = new ConditionSnapshot(this, new NodeId());
250
-
206
+ this._branch0 = new ConditionSnapshotImpl(this, new NodeId());
251
207
  // the condition OPCUA object alway reflects the default branch states
252
208
  // so we set a mechanism that automatically keeps self in sync
253
209
  // with the default branch.
@@ -281,7 +237,7 @@ export class UAConditionImpl extends UABaseEventImpl implements UAConditionEx {
281
237
  */
282
238
  public createBranch(): ConditionSnapshot {
283
239
  const branchId = _create_new_branch_id();
284
- const snapshot = new ConditionSnapshot(this, branchId);
240
+ const snapshot = new ConditionSnapshotImpl(this, branchId);
285
241
  this._branches[branchId.toString()] = snapshot;
286
242
  return snapshot;
287
243
  }
@@ -469,7 +425,7 @@ export class UAConditionImpl extends UABaseEventImpl implements UAConditionEx {
469
425
  // xx console.log("MMMMMMMM%%%%%%%%%%%%%%%%%%%%% branch " +
470
426
  // branch.getBranchId().toString() + " eventId = " + branch.getEventId().toString("hex"));
471
427
 
472
- assert(branch instanceof ConditionSnapshot);
428
+ assert(branch instanceof ConditionSnapshotImpl);
473
429
 
474
430
  this._assert_valid();
475
431
 
@@ -477,7 +433,7 @@ export class UAConditionImpl extends UABaseEventImpl implements UAConditionEx {
477
433
  const conditionOfNode = this.conditionOfNode();
478
434
 
479
435
  if (conditionOfNode) {
480
- const eventData = branch._constructEventData();
436
+ const eventData = (branch as ConditionSnapshotImpl)._constructEventData();
481
437
 
482
438
  this.emit("event", eventData);
483
439
 
@@ -688,11 +644,7 @@ export class UAConditionImpl extends UABaseEventImpl implements UAConditionEx {
688
644
  }
689
645
  }
690
646
 
691
- export interface InstantiateConditionOptions extends InstantiateObjectOptions {
692
- conditionOf?: UAObject | BaseNode | NodeId | null;
693
- conditionClass?: UAObject | BaseNode | NodeId | null;
694
- conditionName?: string;
695
- }
647
+
696
648
  /**
697
649
  * instantiate a Condition.
698
650
  * this will create the unique EventId and will set eventType
@@ -1191,7 +1143,7 @@ function _add_comment_method(
1191
1143
  (conditionEventId: ByteString, comment: LocalizedText, branch: ConditionSnapshot, conditionNode: UAConditionImpl) => {
1192
1144
  assert(inputArguments instanceof Array);
1193
1145
  assert(conditionEventId instanceof Buffer || conditionEventId === null);
1194
- assert(branch instanceof ConditionSnapshot);
1146
+ assert(branch instanceof ConditionSnapshotImpl);
1195
1147
  branch.setComment(comment);
1196
1148
 
1197
1149
  const sourceName = "Method/AddComment";
@@ -6,56 +6,9 @@ import { NodeId } from "node-opcua-nodeid";
6
6
  import { UADiscreteAlarm, UADiscreteAlarm_Base } from "node-opcua-nodeset-ua";
7
7
  import { VariantOptions } from "node-opcua-variant";
8
8
  import { INamespace, UAEventType } from "node-opcua-address-space-base";
9
- import {
10
- InstantiateAlarmConditionOptions,
11
- UAAlarmConditionEx,
12
- UAAlarmConditionHelper,
13
- UAAlarmConditionImpl
14
- } from "./ua_alarm_condition_impl";
15
-
16
- export interface UADiscreteAlarmHelper extends UAAlarmConditionHelper {
17
- on(eventName: string, eventHandle: any): this;
18
- }
19
- export interface UADiscreteAlarmEx
20
- extends UAAlarmConditionEx,
21
- Omit<
22
- UADiscreteAlarm_Base,
23
- | "suppressedState"
24
- | "silenceState"
25
- | "shelvingState"
26
- | "outOfServiceState"
27
- | "latchedState"
28
- | "confirmedState"
29
- | "ackedState"
30
- | "comfirmedState"
31
- | "activeState"
32
- | "enabledState"
33
- >,
34
- UADiscreteAlarmHelper {}
35
- /*=
36
- * +----------------------+
37
- * | UAAlarmCondition |
38
- * +----------------------+
39
- * ^
40
- * |
41
- * +--------+---------+
42
- * | UADiscreteAlarm |
43
- * +------------------+
44
- * ^
45
- * |
46
- * +--------+---------+
47
- * | UAOffNormalAlarm |
48
- * +------------------+
49
- * ^
50
- * |
51
- * +--------+---------+
52
- * | UATripAlarm |
53
- * +------------------+
54
- *
55
- *
56
- *
57
- */
58
-
9
+ import { UADiscreteAlarmEx } from "../../source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex";
10
+ import { InstantiateAlarmConditionOptions } from "../../source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options";
11
+ import { UAAlarmConditionImpl } from "./ua_alarm_condition_impl";
59
12
  /**
60
13
  * The DiscreteAlarmType is used to classify Types into Alarm Conditions where the input for the
61
14
  * Alarm may take on only a certain number of possible values (e.g. true/false,
@@ -9,41 +9,26 @@ import { UAExclusiveDeviationAlarm_Base } from "node-opcua-nodeset-ua";
9
9
  import { UAVariable, UAVariableT } from "node-opcua-address-space-base";
10
10
  import { AddressSpace } from "../address_space";
11
11
  import { NamespacePrivate } from "../namespace_private";
12
+ import { UAExclusiveDeviationAlarmEx } from "../../source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex";
13
+ import { InstantiateExclusiveLimitAlarmOptions } from "../../source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options";
14
+ import { InstallSetPointOptions } from "../../source/interfaces/alarms_and_conditions/install_setpoint_options";
12
15
  import {
13
16
  DeviationAlarmHelper_getSetpointNodeNode,
14
17
  DeviationAlarmHelper_getSetpointValue,
15
18
  DeviationAlarmHelper_install_setpoint,
16
19
  DeviationAlarmHelper_onSetpointDataValueChange,
17
- DeviationStuff,
18
- InstallSetPointOptions
19
20
  } from "./deviation_alarm_helper";
20
21
 
21
- import { UAExclusiveLimitAlarmEx, UAExclusiveLimitAlarmImpl } from "./ua_exclusive_limit_alarm_impl";
22
- import { InstantiateLimitAlarmOptions, UALimitAlarmImpl } from "./ua_limit_alarm_impl";
23
-
24
- export interface UAExclusiveDeviationAlarmEx
25
- extends Omit<
26
- UAExclusiveDeviationAlarm_Base,
27
- | "ackedState"
28
- | "activeState"
29
- | "confirmedState"
30
- | "enabledState"
31
- | "latchedState"
32
- | "limitState"
33
- | "outOfServiceState"
34
- | "shelvingState"
35
- | "silenceState"
36
- | "suppressedState"
37
- >,
38
- UAExclusiveLimitAlarmEx,
39
- DeviationStuff {}
22
+ import { UAExclusiveLimitAlarmImpl } from "./ua_exclusive_limit_alarm_impl";
23
+ import { UALimitAlarmImpl } from "./ua_limit_alarm_impl";
24
+
25
+
40
26
 
41
27
  export declare interface UAExclusiveDeviationAlarmImpl extends UAExclusiveDeviationAlarmEx, UAExclusiveLimitAlarmImpl {
42
28
  on(eventName: string, eventHandler: any): this;
43
29
  get addressSpace(): AddressSpace;
44
30
  }
45
31
 
46
- export interface InstantiateExclusiveLimitAlarmOptions extends InstantiateLimitAlarmOptions, InstallSetPointOptions {}
47
32
  export class UAExclusiveDeviationAlarmImpl extends UAExclusiveLimitAlarmImpl implements UAExclusiveDeviationAlarmEx {
48
33
  public static instantiate(
49
34
  namespace: NamespacePrivate,
@@ -3,9 +3,9 @@
3
3
  */
4
4
  import { NodeId } from "node-opcua-nodeid";
5
5
  import { VariantOptions } from "node-opcua-variant";
6
+ import { InstantiateLimitAlarmOptions } from "../../source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options";
6
7
  import { NamespacePrivate } from "../namespace_private";
7
8
  import { UAExclusiveLimitAlarmImpl } from "./ua_exclusive_limit_alarm_impl";
8
- import { InstantiateLimitAlarmOptions } from "./ua_limit_alarm_impl";
9
9
 
10
10
  export class UAExclusiveLevelAlarmImpl extends UAExclusiveLimitAlarmImpl {
11
11
  public static instantiate(
@@ -4,37 +4,16 @@
4
4
  import { assert } from "node-opcua-assert";
5
5
  import { NodeId } from "node-opcua-nodeid";
6
6
  import { UAObject } from "node-opcua-address-space-base";
7
- import { UAExclusiveLimitAlarm_Base } from "node-opcua-nodeset-ua";
8
7
  import { VariantOptions } from "node-opcua-variant";
9
8
  import { UAEventType } from "node-opcua-address-space-base";
10
- import { UATwoStateVariableEx } from "../../source/ua_two_state_variable_ex";
11
9
  import { NamespacePrivate } from "../namespace_private";
12
10
  import { promoteToStateMachine } from "../state_machine/finite_state_machine";
13
- import { UAShelvedStateMachineEx } from "../state_machine/ua_shelving_state_machine_ex";
14
- import { UAExclusiveLimitStateMachineEx } from "../../source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex";
15
- import { InstantiateLimitAlarmOptions, UALimitAlarmEx, UALimitAlarmHelper, UALimitAlarmImpl } from "./ua_limit_alarm_impl";
11
+ import { UAExclusiveLimitAlarmEx } from "../../source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex";
12
+ import { InstantiateLimitAlarmOptions } from "../../source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options";
13
+ import { UALimitAlarmImpl } from "./ua_limit_alarm_impl";
16
14
 
17
15
  const validState = ["HighHigh", "High", "Low", "LowLow", null];
18
16
 
19
- export interface UAExclusiveLimitAlarmHelper extends UALimitAlarmHelper {}
20
- export interface UAExclusiveLimitAlarmEx
21
- extends Omit<UAExclusiveLimitAlarm_Base, "limitState">,
22
- UALimitAlarmEx,
23
- UAExclusiveLimitAlarmHelper {
24
- on(eventName: string, eventHandler: any): this;
25
-
26
- ackedState: UATwoStateVariableEx;
27
- activeState: UATwoStateVariableEx;
28
- confirmedState?: UATwoStateVariableEx;
29
- enabledState: UATwoStateVariableEx;
30
- latchedState?: UATwoStateVariableEx;
31
- outOfServiceState?: UATwoStateVariableEx;
32
- silenceState?: UATwoStateVariableEx;
33
- suppressedState?: UATwoStateVariableEx;
34
- //
35
- limitState: UAExclusiveLimitStateMachineEx;
36
- shelvingState?: UAShelvedStateMachineEx;
37
- }
38
17
  export declare interface UAExclusiveLimitAlarmImpl extends UAExclusiveLimitAlarmEx {}
39
18
 
40
19
  export class UAExclusiveLimitAlarmImpl extends UALimitAlarmImpl implements UAExclusiveLimitAlarmEx {
@@ -2,7 +2,8 @@
2
2
  * @module node-opcua-address-space.AlarmsAndConditions
3
3
  */
4
4
  import { UAExclusiveRateOfChangeAlarm_Base } from "node-opcua-nodeset-ua";
5
- import { UAExclusiveLimitAlarmEx, UAExclusiveLimitAlarmImpl } from "./ua_exclusive_limit_alarm_impl";
5
+ import { UAExclusiveLimitAlarmEx } from "../../source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex";
6
+ import { UAExclusiveLimitAlarmImpl } from "./ua_exclusive_limit_alarm_impl";
6
7
 
7
8
  export interface UAExclusiveRateOfChangeAlarmEx
8
9
  extends Omit<
@@ -8,43 +8,17 @@ import { NodeClass } from "node-opcua-data-model";
8
8
  import { DataValue } from "node-opcua-data-value";
9
9
  import { make_warningLog } from "node-opcua-debug";
10
10
  import { NodeId } from "node-opcua-nodeid";
11
- import { UALimitAlarm_Base } from "node-opcua-nodeset-ua";
12
11
  import { StatusCodes } from "node-opcua-status-code";
13
12
  import { DataType, VariantOptions } from "node-opcua-variant";
14
- import { UATwoStateVariableEx } from "../../source/ua_two_state_variable_ex";
13
+ import { UAShelvedStateMachineEx } from "../../source";
14
+ import { InstantiateLimitAlarmOptions } from "../../source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options";
15
+ import { UALimitAlarmEx } from "../../source/interfaces/alarms_and_conditions/ua_limit_alarm_ex";
15
16
  import { NamespacePrivate } from "../namespace_private";
16
- import { UAShelvedStateMachineEx } from "../state_machine/ua_shelving_state_machine_ex";
17
17
  import {
18
- InstantiateAlarmConditionOptions,
19
- UAAlarmConditionEx,
20
- UAAlarmConditionHelper,
21
18
  UAAlarmConditionImpl
22
19
  } from "./ua_alarm_condition_impl";
23
20
 
24
21
  const warningLog = make_warningLog("AlarmsAndConditions");
25
- export interface UALimitAlarmHelper extends UAAlarmConditionHelper {
26
- setLowLowLimit(value: number): void;
27
- setLowLimit(value: number): void;
28
- setHighLimit(value: number): void;
29
- setHighHighLimit(value: number): void;
30
- getHighHighLimit(): number;
31
- getHighLimit(): number;
32
- getLowLimit(): number;
33
- getLowLowLimit(): number;
34
- }
35
- export interface UALimitAlarmEx extends UALimitAlarm_Base, UAAlarmConditionEx, UALimitAlarmHelper {
36
- on(eventName: string, eventHandler: any): this;
37
-
38
- enabledState: UATwoStateVariableEx;
39
- ackedState: UATwoStateVariableEx;
40
- confirmedState?: UATwoStateVariableEx;
41
- activeState: UATwoStateVariableEx;
42
- latchedState?: UATwoStateVariableEx;
43
- outOfServiceState?: UATwoStateVariableEx;
44
- silenceState?: UATwoStateVariableEx;
45
- shelvingState?: UAShelvedStateMachineEx;
46
- suppressedState?: UATwoStateVariableEx;
47
- }
48
22
 
49
23
  export declare interface UALimitAlarmImpl extends UALimitAlarmEx, UAAlarmConditionImpl {
50
24
  on(eventName: string, eventHandler: any): this;
@@ -61,16 +35,11 @@ const uaLimitAlarmInputSupportedDataType: DataType[] = [
61
35
  DataType.UInt32
62
36
  ];
63
37
 
64
- export interface InstantiateLimitAlarmOptions extends InstantiateAlarmConditionOptions {
65
- highHighLimit: number;
66
- highLimit: number;
67
- lowLimit: number;
68
- lowLowLimit: number;
69
- inputNode: UAVariable;
38
+ export interface UALimitAlarmImpl extends UALimitAlarmEx {
39
+ shelvingState?: UAShelvedStateMachineEx;
70
40
  }
71
-
72
41
  export class UALimitAlarmImpl extends UAAlarmConditionImpl implements UALimitAlarmEx {
73
- /**
42
+ /**
74
43
  * @method (static)UALimitAlarm.instantiate
75
44
  * @param namespace {INamespace}
76
45
  * @param limitAlarmTypeId
@@ -6,46 +6,20 @@ import { assert } from "node-opcua-assert";
6
6
 
7
7
  import { DataValue } from "node-opcua-data-value";
8
8
  import { NodeId } from "node-opcua-nodeid";
9
- import { DataType, VariantOptions } from "node-opcua-variant";
10
- import { UANonExclusiveDeviationAlarm_Base } from "node-opcua-nodeset-ua";
11
- import { UAVariable, UAVariableT } from "node-opcua-address-space-base";
9
+ import { VariantOptions } from "node-opcua-variant";
10
+ import { UAVariable } from "node-opcua-address-space-base";
12
11
  import { NamespacePrivate } from "../namespace_private";
13
12
  import { AddressSpace } from "../address_space";
13
+ import { InstantiateLimitAlarmOptions } from "../../source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options";
14
+ import { UANonExclusiveDeviationAlarmEx } from "../../source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex";
14
15
  import {
15
16
  DeviationAlarmHelper_getSetpointNodeNode,
16
17
  DeviationAlarmHelper_getSetpointValue,
17
18
  DeviationAlarmHelper_install_setpoint,
18
- DeviationAlarmHelper_onSetpointDataValueChange,
19
- DeviationStuff
19
+ DeviationAlarmHelper_onSetpointDataValueChange
20
20
  } from "./deviation_alarm_helper";
21
- import { InstantiateLimitAlarmOptions, UALimitAlarmImpl } from "./ua_limit_alarm_impl";
22
- import { UANonExclusiveLimitAlarmEx, UANonExclusiveLimitAlarmImpl } from "./ua_non_exclusive_limit_alarm_impl";
23
-
24
- export interface UANonExclusiveDeviationAlarmEx
25
- extends Omit<
26
- UANonExclusiveDeviationAlarm_Base,
27
- | "ackedState"
28
- | "activeState"
29
- | "confirmedState"
30
- | "enabledState"
31
- | "latchedState"
32
- | "limitState"
33
- | "outOfServiceState"
34
- | "shelvingState"
35
- | "silenceState"
36
- | "suppressedState"
37
- //
38
- | "highHighState"
39
- | "highState"
40
- | "lowState"
41
- | "lowLowState"
42
- >,
43
- UANonExclusiveLimitAlarmEx,
44
- DeviationStuff {
45
- setpointNode: UAVariableT<NodeId, DataType.NodeId>;
46
- setpointNodeNode: UAVariable;
47
- }
48
-
21
+ import { UALimitAlarmImpl } from "./ua_limit_alarm_impl";
22
+ import { UANonExclusiveLimitAlarmImpl } from "./ua_non_exclusive_limit_alarm_impl";
49
23
  export declare interface UANonExclusiveDeviationAlarmImpl extends UANonExclusiveLimitAlarmImpl, UANonExclusiveDeviationAlarmEx {
50
24
  on(eventName: string, eventHandler: any): this;
51
25
  get addressSpace(): AddressSpace;