aes70 1.6.1 → 2.0.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.
- package/COPYING +7 -7
- package/Changelog +9 -0
- package/README.md +74 -42
- package/dist/AES70.es5.js +24520 -1
- package/package.json +3 -3
- package/src/OCP1/Arguments.js +3 -0
- package/src/OCP1/Enum.js +8 -0
- package/src/OCP1/OcaActionObjectSearchResult.js +20 -0
- package/src/OCP1/OcaActionObjectSearchResultFlags.js +3 -0
- package/src/OCP1/OcaArray1D.js +108 -0
- package/src/OCP1/OcaBitstring.js +3 -0
- package/src/OCP1/OcaBlob.js +2 -43
- package/src/OCP1/OcaBlobFixedLen.js +8 -0
- package/src/OCP1/OcaBlockConfigurability.js +3 -0
- package/src/OCP1/OcaBoolean.js +3 -0
- package/src/OCP1/OcaCommand.js +17 -0
- package/src/OCP1/OcaCommandResult.js +17 -0
- package/src/OCP1/OcaCommandSetResult.js +17 -0
- package/src/OCP1/OcaConstructionParameter.js +16 -0
- package/src/OCP1/OcaCounter.js +22 -0
- package/src/OCP1/OcaCounterNotifierFilterParameters.js +19 -0
- package/src/OCP1/OcaCounterSet.js +17 -0
- package/src/OCP1/OcaCounterUpdate.js +18 -0
- package/src/OCP1/OcaCounterUpdateEventData.js +15 -0
- package/src/OCP1/OcaDatasetSearchResult.js +17 -0
- package/src/OCP1/OcaDeviceGenericState.js +4 -0
- package/src/OCP1/OcaDeviceOperationalState.js +16 -0
- package/src/OCP1/OcaExecutableType.js +4 -0
- package/src/OCP1/OcaFloat32.js +3 -0
- package/src/OCP1/OcaFloat64.js +3 -0
- package/src/OCP1/OcaGenericEndState.js +4 -0
- package/src/OCP1/OcaGlobalTypeIdentifier.js +1 -1
- package/src/OCP1/OcaGroupException.js +18 -0
- package/src/OCP1/OcaIODirection.js +4 -0
- package/src/OCP1/OcaIP4AutoconfigMode.js +4 -0
- package/src/OCP1/OcaIP4Gateway.js +17 -0
- package/src/OCP1/OcaIP4NetworkSettings.js +23 -0
- package/src/OCP1/OcaIP6AutoconfigMode.js +4 -0
- package/src/OCP1/OcaIP6Gateway.js +17 -0
- package/src/OCP1/OcaIP6NetworkSettings.js +24 -0
- package/src/OCP1/OcaInt16.js +3 -0
- package/src/OCP1/OcaInt32.js +3 -0
- package/src/OCP1/OcaInt64.js +3 -0
- package/src/OCP1/OcaInt8.js +3 -0
- package/src/OCP1/OcaInterval.js +18 -0
- package/src/OCP1/OcaIntervalBounds.js +3 -0
- package/src/OCP1/OcaJobDisposedEventData.js +18 -0
- package/src/OCP1/OcaJobDisposition.js +4 -0
- package/src/OCP1/OcaJobQueueItem.js +24 -0
- package/src/OCP1/OcaList.js +2 -127
- package/src/OCP1/OcaList2D.js +6 -0
- package/src/OCP1/OcaList32.js +3 -0
- package/src/OCP1/OcaLockState.js +4 -0
- package/src/OCP1/OcaLogFilter.js +20 -0
- package/src/OCP1/OcaLogRecord.js +21 -0
- package/src/OCP1/OcaLongBlob.js +3 -0
- package/src/OCP1/OcaManufacturer.js +19 -0
- package/src/OCP1/OcaMap.js +3 -0
- package/src/OCP1/OcaMatrixCommand.js +19 -0
- package/src/OCP1/OcaMatrixCoordinates.js +15 -0
- package/src/OCP1/OcaMediaAccessMode.js +4 -0
- package/src/OCP1/OcaMediaFrameFormat.js +4 -0
- package/src/OCP1/OcaMediaPlayOption.js +4 -0
- package/src/OCP1/OcaMediaRecorderPlayerState.js +4 -0
- package/src/OCP1/OcaMediaStreamEndpoint.js +40 -0
- package/src/OCP1/OcaMediaStreamEndpointCommand.js +4 -0
- package/src/OCP1/OcaMediaStreamEndpointState.js +4 -0
- package/src/OCP1/OcaMediaStreamEndpointStatus.js +16 -0
- package/src/OCP1/OcaMediaStreamMode.js +21 -0
- package/src/OCP1/OcaMediaStreamModeCapability.js +29 -0
- package/src/OCP1/OcaMediaStreamModeCapabilityDirection.js +3 -0
- package/src/OCP1/OcaMediaTrackFunction.js +3 -0
- package/src/OCP1/OcaMediaTransportSession.js +30 -0
- package/src/OCP1/OcaMediaTransportSessionConnection.js +17 -0
- package/src/OCP1/OcaMediaTransportSessionConnectionState.js +15 -0
- package/src/OCP1/OcaMediaTransportSessionState.js +4 -0
- package/src/OCP1/OcaMediaTransportSessionStatus.js +16 -0
- package/src/OCP1/OcaMediaTransportTimingParameters.js +16 -0
- package/src/OCP1/OcaMediaVolumePosition.js +16 -0
- package/src/OCP1/OcaMediaVolumePositionType.js +4 -0
- package/src/OCP1/OcaMultiMap.js +3 -0
- package/src/OCP1/OcaNetworkAdvertisingMechanism.js +16 -0
- package/src/OCP1/OcaNetworkAdvertisingService.js +4 -0
- package/src/OCP1/OcaNetworkInterfaceAssignment.js +23 -0
- package/src/OCP1/OcaNetworkInterfaceCommand.js +4 -0
- package/src/OCP1/OcaNetworkInterfaceState.js +4 -0
- package/src/OCP1/OcaNetworkInterfaceStatus.js +16 -0
- package/src/OCP1/OcaObjectSearchResult.js +2 -18
- package/src/OCP1/OcaObjectSearchResultFlags.js +5 -3
- package/src/OCP1/OcaPort.js +1 -1
- package/src/OCP1/OcaPortClockMapEntry.js +16 -0
- package/src/OCP1/OcaPortID.js +2 -2
- package/src/OCP1/OcaPortIdentification.js +16 -0
- package/src/OCP1/OcaPortMode.js +5 -4
- package/src/OCP1/OcaPositionDescriptor.js +2 -2
- package/src/OCP1/OcaProduct.js +19 -0
- package/src/OCP1/OcaProgramResult.js +17 -0
- package/src/OCP1/OcaProgramRunMode.js +3 -0
- package/src/OCP1/OcaProtoPort.js +2 -2
- package/src/OCP1/OcaProtoPortClockMapEntry.js +17 -0
- package/src/OCP1/OcaProtoSignalPath.js +2 -2
- package/src/OCP1/OcaSamplingRateConverterType.js +4 -0
- package/src/OCP1/OcaSecurityType.js +4 -0
- package/src/OCP1/OcaSignalPath.js +2 -2
- package/src/OCP1/OcaString.js +3 -0
- package/src/OCP1/OcaTask.js +4 -3
- package/src/OCP1/OcaTaskExecutionTerminatedEventData.js +20 -0
- package/src/OCP1/OcaTaskGenericState.js +4 -0
- package/src/OCP1/OcaTaskOperationalState.js +17 -0
- package/src/OCP1/OcaTaskSchedulerState.js +4 -0
- package/src/OCP1/OcaTaskStatusChangedEventData.js +18 -0
- package/src/OCP1/OcaTime.js +18 -0
- package/src/OCP1/OcaTimeDeliveryMechanism.js +4 -0
- package/src/OCP1/OcaTimeDeliveryParameters_StreamEndpoint.js +15 -0
- package/src/OCP1/OcaTimePTP.js +2 -15
- package/src/OCP1/OcaTypedBlob.js +16 -0
- package/src/OCP1/OcaUint16.js +3 -0
- package/src/OCP1/OcaUint32.js +3 -0
- package/src/OCP1/OcaUint64.js +3 -0
- package/src/OCP1/OcaUint8.js +3 -0
- package/src/OCP1/OcaVariant.js +92 -0
- package/src/OCP1/OcaWhenPhysicalAbsolute.js +16 -0
- package/src/OCP1/OcaWhenPhysicalRelative.js +16 -0
- package/src/OCP1/RestWithOffset.js +3 -0
- package/src/OCP1/String16.js +3 -0
- package/src/OCP1/Struct.js +12 -0
- package/src/OCP1/Tuple.js +3 -0
- package/src/OCP1/createBlobType.js +58 -0
- package/src/OCP1/createListType.js +137 -0
- package/src/OCP1/createType.js +8 -4
- package/src/OCP1/decode_message.js +10 -2
- package/src/OCP1/encode_message.js +5 -1
- package/src/OCP1/getLengthEncoder.js +23 -0
- package/src/OCP1/notification2.js +70 -0
- package/src/OCP1/protocol_version.js +4 -0
- package/src/connection.js +14 -6
- package/src/controller/ControlClasses/OcaActuator.d.ts +3 -3
- package/src/controller/ControlClasses/OcaActuator.js +4 -4
- package/src/controller/ControlClasses/OcaAgent.d.ts +6 -14
- package/src/controller/ControlClasses/OcaAgent.js +8 -18
- package/src/controller/ControlClasses/OcaApplicationNetwork.d.ts +9 -17
- package/src/controller/ControlClasses/OcaApplicationNetwork.js +11 -32
- package/src/controller/ControlClasses/OcaAudioLevelSensor.d.ts +4 -7
- package/src/controller/ControlClasses/OcaAudioLevelSensor.js +5 -8
- package/src/controller/ControlClasses/OcaAudioProcessingManager.d.ts +1 -1
- package/src/controller/ControlClasses/OcaAudioProcessingManager.js +2 -2
- package/src/controller/ControlClasses/OcaBasicActuator.d.ts +1 -1
- package/src/controller/ControlClasses/OcaBasicActuator.js +2 -2
- package/src/controller/ControlClasses/OcaBasicSensor.d.ts +1 -1
- package/src/controller/ControlClasses/OcaBasicSensor.js +2 -2
- package/src/controller/ControlClasses/OcaBitstringActuator.d.ts +34 -13
- package/src/controller/ControlClasses/OcaBitstringActuator.js +35 -18
- package/src/controller/ControlClasses/OcaBitstringSensor.d.ts +19 -7
- package/src/controller/ControlClasses/OcaBitstringSensor.js +22 -12
- package/src/controller/ControlClasses/OcaBlock.d.ts +455 -89
- package/src/controller/ControlClasses/OcaBlock.js +477 -103
- package/src/controller/ControlClasses/OcaBlockFactoryAgent.d.ts +299 -0
- package/src/controller/ControlClasses/OcaBlockFactoryAgent.js +360 -0
- package/src/controller/ControlClasses/OcaBooleanActuator.d.ts +2 -4
- package/src/controller/ControlClasses/OcaBooleanActuator.js +3 -5
- package/src/controller/ControlClasses/OcaBooleanSensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaBooleanSensor.js +3 -4
- package/src/controller/ControlClasses/OcaCodingManager.js +1 -1
- package/src/controller/ControlClasses/OcaCommandSet.d.ts +89 -0
- package/src/controller/ControlClasses/OcaCommandSet.js +94 -0
- package/src/controller/ControlClasses/OcaCommandSetAgent.d.ts +31 -0
- package/src/controller/ControlClasses/OcaCommandSetAgent.js +38 -0
- package/src/controller/ControlClasses/OcaCounterNotifier.d.ts +89 -0
- package/src/controller/ControlClasses/OcaCounterNotifier.js +101 -0
- package/src/controller/ControlClasses/OcaCurrentSensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaCurrentSensor.js +3 -4
- package/src/controller/ControlClasses/OcaDataset.d.ts +223 -0
- package/src/controller/ControlClasses/OcaDataset.js +234 -0
- package/src/controller/ControlClasses/OcaDatasetWorker.d.ts +31 -0
- package/src/controller/ControlClasses/OcaDatasetWorker.js +40 -0
- package/src/controller/ControlClasses/OcaDelay.d.ts +2 -4
- package/src/controller/ControlClasses/OcaDelay.js +3 -5
- package/src/controller/ControlClasses/OcaDelayExtended.d.ts +5 -7
- package/src/controller/ControlClasses/OcaDelayExtended.js +6 -8
- package/src/controller/ControlClasses/OcaDeviceManager.d.ts +123 -62
- package/src/controller/ControlClasses/OcaDeviceManager.js +161 -83
- package/src/controller/ControlClasses/OcaDeviceTimeManager.d.ts +43 -25
- package/src/controller/ControlClasses/OcaDeviceTimeManager.js +43 -28
- package/src/controller/ControlClasses/OcaDiagnosticManager.d.ts +1 -13
- package/src/controller/ControlClasses/OcaDiagnosticManager.js +3 -16
- package/src/controller/ControlClasses/OcaDynamics.d.ts +38 -63
- package/src/controller/ControlClasses/OcaDynamics.js +48 -71
- package/src/controller/ControlClasses/OcaDynamicsCurve.d.ts +169 -82
- package/src/controller/ControlClasses/OcaDynamicsCurve.js +189 -93
- package/src/controller/ControlClasses/OcaDynamicsDetector.d.ts +8 -16
- package/src/controller/ControlClasses/OcaDynamicsDetector.js +9 -17
- package/src/controller/ControlClasses/OcaFilterArbitraryCurve.d.ts +5 -7
- package/src/controller/ControlClasses/OcaFilterArbitraryCurve.js +10 -12
- package/src/controller/ControlClasses/OcaFilterClassical.d.ts +15 -26
- package/src/controller/ControlClasses/OcaFilterClassical.js +15 -27
- package/src/controller/ControlClasses/OcaFilterFIR.d.ts +6 -11
- package/src/controller/ControlClasses/OcaFilterFIR.js +12 -18
- package/src/controller/ControlClasses/OcaFilterParametric.d.ts +55 -26
- package/src/controller/ControlClasses/OcaFilterParametric.js +63 -32
- package/src/controller/ControlClasses/OcaFilterPolynomial.d.ts +5 -4
- package/src/controller/ControlClasses/OcaFilterPolynomial.js +8 -7
- package/src/controller/ControlClasses/OcaFirmwareManager.d.ts +6 -11
- package/src/controller/ControlClasses/OcaFirmwareManager.js +5 -11
- package/src/controller/ControlClasses/OcaFloat32Actuator.d.ts +3 -5
- package/src/controller/ControlClasses/OcaFloat32Actuator.js +4 -6
- package/src/controller/ControlClasses/OcaFloat32Sensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaFloat32Sensor.js +3 -4
- package/src/controller/ControlClasses/OcaFloat64Actuator.d.ts +3 -5
- package/src/controller/ControlClasses/OcaFloat64Actuator.js +4 -6
- package/src/controller/ControlClasses/OcaFloat64Sensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaFloat64Sensor.js +3 -4
- package/src/controller/ControlClasses/OcaFrequencyActuator.d.ts +2 -4
- package/src/controller/ControlClasses/OcaFrequencyActuator.js +3 -5
- package/src/controller/ControlClasses/OcaFrequencySensor.d.ts +1 -2
- package/src/controller/ControlClasses/OcaFrequencySensor.js +2 -3
- package/src/controller/ControlClasses/OcaGain.d.ts +2 -4
- package/src/controller/ControlClasses/OcaGain.js +3 -5
- package/src/controller/ControlClasses/OcaGainSensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaGainSensor.js +3 -4
- package/src/controller/ControlClasses/OcaGroup.d.ts +140 -0
- package/src/controller/ControlClasses/OcaGroup.js +156 -0
- package/src/controller/ControlClasses/OcaGrouper.d.ts +20 -140
- package/src/controller/ControlClasses/OcaGrouper.js +34 -171
- package/src/controller/ControlClasses/OcaIdentificationActuator.d.ts +5 -7
- package/src/controller/ControlClasses/OcaIdentificationActuator.js +7 -9
- package/src/controller/ControlClasses/OcaIdentificationSensor.d.ts +5 -6
- package/src/controller/ControlClasses/OcaIdentificationSensor.js +6 -7
- package/src/controller/ControlClasses/OcaImpedanceSensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaImpedanceSensor.js +3 -4
- package/src/controller/ControlClasses/OcaInt16Actuator.d.ts +3 -5
- package/src/controller/ControlClasses/OcaInt16Actuator.js +4 -6
- package/src/controller/ControlClasses/OcaInt16Sensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaInt16Sensor.js +3 -4
- package/src/controller/ControlClasses/OcaInt32Actuator.d.ts +3 -5
- package/src/controller/ControlClasses/OcaInt32Actuator.js +4 -6
- package/src/controller/ControlClasses/OcaInt32Sensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaInt32Sensor.js +3 -4
- package/src/controller/ControlClasses/OcaInt64Actuator.d.ts +3 -5
- package/src/controller/ControlClasses/OcaInt64Actuator.js +4 -6
- package/src/controller/ControlClasses/OcaInt64Sensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaInt64Sensor.js +3 -4
- package/src/controller/ControlClasses/OcaInt8Actuator.d.ts +3 -5
- package/src/controller/ControlClasses/OcaInt8Actuator.js +4 -6
- package/src/controller/ControlClasses/OcaInt8Sensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaInt8Sensor.js +3 -4
- package/src/controller/ControlClasses/OcaJsonActuator.d.ts +46 -0
- package/src/controller/ControlClasses/OcaJsonActuator.js +58 -0
- package/src/controller/ControlClasses/OcaJsonSensor.d.ts +51 -0
- package/src/controller/ControlClasses/OcaJsonSensor.js +65 -0
- package/src/controller/ControlClasses/OcaLevelSensor.d.ts +1 -2
- package/src/controller/ControlClasses/OcaLevelSensor.js +2 -3
- package/src/controller/ControlClasses/OcaLibraryManager.d.ts +1 -1
- package/src/controller/ControlClasses/OcaLibraryManager.js +3 -3
- package/src/controller/ControlClasses/OcaLockManager.d.ts +44 -0
- package/src/controller/ControlClasses/OcaLockManager.js +53 -0
- package/src/controller/ControlClasses/OcaLog.d.ts +128 -0
- package/src/controller/ControlClasses/OcaLog.js +142 -0
- package/src/controller/ControlClasses/OcaManager.js +1 -1
- package/src/controller/ControlClasses/OcaMatrix.d.ts +104 -82
- package/src/controller/ControlClasses/OcaMatrix.js +121 -93
- package/src/controller/ControlClasses/OcaMediaClock.d.ts +27 -0
- package/src/controller/ControlClasses/OcaMediaClock.js +28 -4
- package/src/controller/ControlClasses/OcaMediaClock3.d.ts +16 -22
- package/src/controller/ControlClasses/OcaMediaClock3.js +22 -29
- package/src/controller/ControlClasses/OcaMediaClockManager.d.ts +7 -10
- package/src/controller/ControlClasses/OcaMediaClockManager.js +9 -13
- package/src/controller/ControlClasses/OcaMediaRecorderPlayer.d.ts +235 -0
- package/src/controller/ControlClasses/OcaMediaRecorderPlayer.js +261 -0
- package/src/controller/ControlClasses/OcaMediaTransportApplication.d.ts +612 -0
- package/src/controller/ControlClasses/OcaMediaTransportApplication.js +704 -0
- package/src/controller/ControlClasses/OcaMediaTransportNetwork.d.ts +12 -25
- package/src/controller/ControlClasses/OcaMediaTransportNetwork.js +12 -35
- package/src/controller/ControlClasses/OcaMediaTransportSessionAgent.d.ts +235 -0
- package/src/controller/ControlClasses/OcaMediaTransportSessionAgent.js +249 -0
- package/src/controller/ControlClasses/OcaMute.d.ts +2 -4
- package/src/controller/ControlClasses/OcaMute.js +3 -5
- package/src/controller/ControlClasses/OcaNetwork.js +1 -1
- package/src/controller/ControlClasses/OcaNetworkApplication.d.ts +179 -0
- package/src/controller/ControlClasses/OcaNetworkApplication.js +202 -0
- package/src/controller/ControlClasses/OcaNetworkInterface.d.ts +318 -0
- package/src/controller/ControlClasses/OcaNetworkInterface.js +353 -0
- package/src/controller/ControlClasses/OcaNetworkManager.d.ts +45 -17
- package/src/controller/ControlClasses/OcaNetworkManager.js +59 -22
- package/src/controller/ControlClasses/OcaNetworkSignalChannel.js +1 -1
- package/src/controller/ControlClasses/OcaNumericObserver.d.ts +24 -40
- package/src/controller/ControlClasses/OcaNumericObserver.js +25 -40
- package/src/controller/ControlClasses/OcaNumericObserverList.d.ts +20 -33
- package/src/controller/ControlClasses/OcaNumericObserverList.js +26 -39
- package/src/controller/ControlClasses/OcaPanBalance.d.ts +4 -8
- package/src/controller/ControlClasses/OcaPanBalance.js +5 -9
- package/src/controller/ControlClasses/OcaPhysicalPosition.d.ts +3 -6
- package/src/controller/ControlClasses/OcaPhysicalPosition.js +4 -7
- package/src/controller/ControlClasses/OcaPolarity.d.ts +2 -4
- package/src/controller/ControlClasses/OcaPolarity.js +3 -5
- package/src/controller/ControlClasses/OcaPowerManager.d.ts +30 -14
- package/src/controller/ControlClasses/OcaPowerManager.js +32 -17
- package/src/controller/ControlClasses/OcaPowerSensor.d.ts +38 -0
- package/src/controller/ControlClasses/OcaPowerSensor.js +51 -0
- package/src/controller/ControlClasses/OcaPowerSupply.d.ts +8 -16
- package/src/controller/ControlClasses/OcaPowerSupply.js +13 -21
- package/src/controller/ControlClasses/OcaProgram.d.ts +63 -0
- package/src/controller/ControlClasses/OcaProgram.js +82 -0
- package/src/controller/ControlClasses/OcaRamper.d.ts +46 -10
- package/src/controller/ControlClasses/OcaRamper.js +65 -12
- package/src/controller/ControlClasses/OcaRoot.d.ts +69 -24
- package/src/controller/ControlClasses/OcaRoot.js +67 -26
- package/src/controller/ControlClasses/OcaSamplingRateConverter.d.ts +22 -0
- package/src/controller/ControlClasses/OcaSamplingRateConverter.js +28 -0
- package/src/controller/ControlClasses/OcaSecurityManager.d.ts +12 -13
- package/src/controller/ControlClasses/OcaSecurityManager.js +10 -12
- package/src/controller/ControlClasses/OcaSensor.d.ts +1 -2
- package/src/controller/ControlClasses/OcaSensor.js +2 -3
- package/src/controller/ControlClasses/OcaSignalGenerator.d.ts +21 -39
- package/src/controller/ControlClasses/OcaSignalGenerator.js +22 -40
- package/src/controller/ControlClasses/OcaSignalInput.d.ts +4 -4
- package/src/controller/ControlClasses/OcaSignalInput.js +5 -5
- package/src/controller/ControlClasses/OcaSignalOutput.d.ts +4 -4
- package/src/controller/ControlClasses/OcaSignalOutput.js +5 -5
- package/src/controller/ControlClasses/OcaStateSensor.d.ts +58 -0
- package/src/controller/ControlClasses/OcaStateSensor.js +75 -0
- package/src/controller/ControlClasses/OcaStreamConnector.js +1 -1
- package/src/controller/ControlClasses/OcaStreamNetwork.js +1 -1
- package/src/controller/ControlClasses/OcaStringActuator.d.ts +7 -8
- package/src/controller/ControlClasses/OcaStringActuator.js +7 -8
- package/src/controller/ControlClasses/OcaStringSensor.d.ts +20 -9
- package/src/controller/ControlClasses/OcaStringSensor.js +23 -13
- package/src/controller/ControlClasses/OcaSubscriptionManager.d.ts +211 -41
- package/src/controller/ControlClasses/OcaSubscriptionManager.js +224 -39
- package/src/controller/ControlClasses/OcaSummingPoint.d.ts +3 -2
- package/src/controller/ControlClasses/OcaSummingPoint.js +4 -3
- package/src/controller/ControlClasses/OcaSwitch.d.ts +70 -25
- package/src/controller/ControlClasses/OcaSwitch.js +113 -35
- package/src/controller/ControlClasses/OcaTaskAgent.d.ts +192 -0
- package/src/controller/ControlClasses/OcaTaskAgent.js +212 -0
- package/src/controller/ControlClasses/OcaTaskManager.d.ts +4 -6
- package/src/controller/ControlClasses/OcaTaskManager.js +7 -9
- package/src/controller/ControlClasses/OcaTaskScheduler.d.ts +150 -0
- package/src/controller/ControlClasses/OcaTaskScheduler.js +159 -0
- package/src/controller/ControlClasses/OcaTemperatureActuator.d.ts +3 -5
- package/src/controller/ControlClasses/OcaTemperatureActuator.js +4 -6
- package/src/controller/ControlClasses/OcaTemperatureSensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaTemperatureSensor.js +3 -4
- package/src/controller/ControlClasses/OcaTimeIntervalSensor.d.ts +1 -2
- package/src/controller/ControlClasses/OcaTimeIntervalSensor.js +2 -3
- package/src/controller/ControlClasses/OcaTimeSource.d.ts +108 -37
- package/src/controller/ControlClasses/OcaTimeSource.js +148 -48
- package/src/controller/ControlClasses/OcaUint16Actuator.d.ts +3 -5
- package/src/controller/ControlClasses/OcaUint16Actuator.js +4 -6
- package/src/controller/ControlClasses/OcaUint16Sensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaUint16Sensor.js +3 -4
- package/src/controller/ControlClasses/OcaUint32Actuator.d.ts +3 -5
- package/src/controller/ControlClasses/OcaUint32Actuator.js +4 -6
- package/src/controller/ControlClasses/OcaUint32Sensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaUint32Sensor.js +3 -4
- package/src/controller/ControlClasses/OcaUint64Actuator.d.ts +3 -5
- package/src/controller/ControlClasses/OcaUint64Actuator.js +4 -6
- package/src/controller/ControlClasses/OcaUint64Sensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaUint64Sensor.js +3 -4
- package/src/controller/ControlClasses/OcaUint8Actuator.d.ts +3 -5
- package/src/controller/ControlClasses/OcaUint8Actuator.js +4 -6
- package/src/controller/ControlClasses/OcaUint8Sensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaUint8Sensor.js +3 -4
- package/src/controller/ControlClasses/OcaVoltageSensor.d.ts +2 -3
- package/src/controller/ControlClasses/OcaVoltageSensor.js +3 -4
- package/src/controller/ControlClasses/OcaWorker.d.ts +84 -37
- package/src/controller/ControlClasses/OcaWorker.js +93 -43
- package/src/controller/base_event.js +71 -23
- package/src/controller/client_connection.d.ts +26 -0
- package/src/controller/client_connection.js +39 -7
- package/src/controller/event.js +17 -20
- package/src/controller/make_control_class.js +3 -1
- package/src/controller/notification_error.d.ts +40 -0
- package/src/controller/notification_error.js +62 -0
- package/src/controller/observeProperty.js +8 -8
- package/src/controller/property_event.js +18 -10
- package/src/controller/remote_device.js +137 -49
- package/src/controller/tcp_connection.d.ts +8 -6
- package/src/index.default.d.ts +1 -0
- package/src/index.default.js +1 -0
- package/src/types/Enum.js +8 -0
- package/src/types/OcaActionObjectSearchResult.d.ts +73 -0
- package/src/types/OcaActionObjectSearchResult.js +34 -0
- package/src/types/OcaActionObjectSearchResultFlags.d.ts +37 -0
- package/src/types/OcaActionObjectSearchResultFlags.js +52 -0
- package/src/types/OcaApplicationNetworkCommand.d.ts +1 -19
- package/src/types/OcaApplicationNetworkCommand.js +0 -24
- package/src/types/OcaApplicationNetworkState.d.ts +1 -37
- package/src/types/OcaApplicationNetworkState.js +0 -48
- package/src/types/OcaBlockConfigurability.d.ts +26 -0
- package/src/types/OcaBlockConfigurability.js +35 -0
- package/src/types/OcaClassicalFilterShape.d.ts +1 -1
- package/src/types/OcaClassicalFilterShape.js +1 -1
- package/src/types/OcaCommand.d.ts +44 -0
- package/src/types/OcaCommand.js +25 -0
- package/src/types/OcaCommandResult.d.ts +42 -0
- package/src/types/OcaCommandResult.js +24 -0
- package/src/types/OcaCommandSetResult.d.ts +41 -0
- package/src/types/OcaCommandSetResult.js +23 -0
- package/src/types/OcaConstructionParameter.d.ts +40 -0
- package/src/types/OcaConstructionParameter.js +23 -0
- package/src/types/OcaCounter.d.ts +81 -0
- package/src/types/OcaCounter.js +38 -0
- package/src/types/OcaCounterNotifierFilterParameters.d.ts +81 -0
- package/src/types/OcaCounterNotifierFilterParameters.js +37 -0
- package/src/types/OcaCounterSet.d.ts +38 -0
- package/src/types/OcaCounterSet.js +22 -0
- package/src/types/OcaCounterUpdate.d.ts +54 -0
- package/src/types/OcaCounterUpdate.js +28 -0
- package/src/types/OcaCounterUpdateEventData.d.ts +27 -0
- package/src/types/OcaCounterUpdateEventData.js +17 -0
- package/src/types/OcaDatasetSearchResult.d.ts +51 -0
- package/src/types/OcaDatasetSearchResult.js +28 -0
- package/src/types/OcaDelayUnit.d.ts +2 -1
- package/src/types/OcaDelayUnit.js +2 -1
- package/src/types/OcaDelayValue.d.ts +2 -1
- package/src/types/OcaDelayValue.js +2 -1
- package/src/types/OcaDeviceGenericState.d.ts +62 -0
- package/src/types/OcaDeviceGenericState.js +52 -0
- package/src/types/OcaDeviceOperationalState.d.ts +42 -0
- package/src/types/OcaDeviceOperationalState.js +22 -0
- package/src/types/OcaDeviceState.d.ts +2 -2
- package/src/types/OcaDeviceState.js +2 -2
- package/src/types/OcaExecutableType.d.ts +50 -0
- package/src/types/OcaExecutableType.js +36 -0
- package/src/types/OcaGenericEndState.d.ts +56 -0
- package/src/types/OcaGenericEndState.js +44 -0
- package/src/types/OcaGlobalTypeIdentifier.d.ts +12 -12
- package/src/types/OcaGlobalTypeIdentifier.js +8 -7
- package/src/types/OcaGroupException.d.ts +53 -0
- package/src/types/OcaGroupException.js +28 -0
- package/src/types/OcaGrouperCitizen.d.ts +10 -10
- package/src/types/OcaGrouperCitizen.js +6 -6
- package/src/types/OcaGrouperEnrollment.d.ts +4 -9
- package/src/types/OcaGrouperEnrollment.js +3 -5
- package/src/types/OcaGrouperGroup.d.ts +9 -9
- package/src/types/OcaGrouperGroup.js +5 -5
- package/src/types/OcaGrouperMode.d.ts +4 -3
- package/src/types/OcaGrouperMode.js +4 -3
- package/src/types/OcaGrouperStatusChangeEventData.d.ts +2 -2
- package/src/types/OcaGrouperStatusChangeEventData.js +2 -2
- package/src/types/OcaGrouperStatusChangeType.d.ts +1 -1
- package/src/types/OcaGrouperStatusChangeType.js +1 -1
- package/src/types/OcaIODirection.d.ts +39 -0
- package/src/types/OcaIODirection.js +28 -0
- package/src/types/OcaIP4AutoconfigMode.d.ts +56 -0
- package/src/types/OcaIP4AutoconfigMode.js +44 -0
- package/src/types/OcaIP4Gateway.d.ts +53 -0
- package/src/types/OcaIP4Gateway.js +27 -0
- package/src/types/OcaIP4NetworkSettings.d.ts +111 -0
- package/src/types/OcaIP4NetworkSettings.js +56 -0
- package/src/types/OcaIP6AutoconfigMode.d.ts +56 -0
- package/src/types/OcaIP6AutoconfigMode.js +44 -0
- package/src/types/OcaIP6Gateway.d.ts +53 -0
- package/src/types/OcaIP6Gateway.js +27 -0
- package/src/types/OcaIP6NetworkSettings.d.ts +123 -0
- package/src/types/OcaIP6NetworkSettings.js +61 -0
- package/src/types/OcaInterval.d.ts +8 -0
- package/src/types/OcaInterval.js +84 -0
- package/src/types/OcaIntervalBounds.d.ts +41 -0
- package/src/types/OcaIntervalBounds.js +53 -0
- package/src/types/OcaJobDisposedEventData.d.ts +57 -0
- package/src/types/OcaJobDisposedEventData.js +28 -0
- package/src/types/OcaJobDisposition.d.ts +68 -0
- package/src/types/OcaJobDisposition.js +60 -0
- package/src/types/OcaJobQueueItem.d.ts +105 -0
- package/src/types/OcaJobQueueItem.js +44 -0
- package/src/types/OcaLibVolType.d.ts +2 -4
- package/src/types/OcaLibVolType.js +1 -2
- package/src/types/OcaLockState.d.ts +50 -0
- package/src/types/OcaLockState.js +36 -0
- package/src/types/OcaLogFilter.d.ts +70 -0
- package/src/types/OcaLogFilter.js +33 -0
- package/src/types/OcaLogRecord.d.ts +85 -0
- package/src/types/OcaLogRecord.js +40 -0
- package/src/types/OcaManagerDefaultObjectNumbers.d.ts +7 -0
- package/src/types/OcaManagerDefaultObjectNumbers.js +7 -0
- package/src/types/OcaManagerDescriptor.d.ts +11 -9
- package/src/types/OcaManagerDescriptor.js +6 -5
- package/src/types/OcaManufacturer.d.ts +87 -0
- package/src/types/OcaManufacturer.js +47 -0
- package/src/types/OcaMatrixCommand.d.ts +61 -0
- package/src/types/OcaMatrixCommand.js +29 -0
- package/src/types/OcaMatrixCoordinates.d.ts +38 -0
- package/src/types/OcaMatrixCoordinates.js +23 -0
- package/src/types/OcaMediaAccessMode.d.ts +50 -0
- package/src/types/OcaMediaAccessMode.js +36 -0
- package/src/types/OcaMediaClockAvailability.d.ts +1 -1
- package/src/types/OcaMediaClockAvailability.js +1 -1
- package/src/types/OcaMediaClockRate.d.ts +7 -7
- package/src/types/OcaMediaClockRate.js +4 -4
- package/src/types/OcaMediaConnection.d.ts +2 -2
- package/src/types/OcaMediaConnection.js +1 -1
- package/src/types/OcaMediaFrameFormat.d.ts +74 -0
- package/src/types/OcaMediaFrameFormat.js +68 -0
- package/src/types/OcaMediaPlayOption.d.ts +50 -0
- package/src/types/OcaMediaPlayOption.js +36 -0
- package/src/types/OcaMediaRecorderPlayerState.d.ts +62 -0
- package/src/types/OcaMediaRecorderPlayerState.js +52 -0
- package/src/types/OcaMediaStreamCastMode.d.ts +3 -3
- package/src/types/OcaMediaStreamCastMode.js +3 -3
- package/src/types/OcaMediaStreamEndpoint.d.ts +238 -0
- package/src/types/OcaMediaStreamEndpoint.js +114 -0
- package/src/types/OcaMediaStreamEndpointCommand.d.ts +80 -0
- package/src/types/OcaMediaStreamEndpointCommand.js +76 -0
- package/src/types/OcaMediaStreamEndpointState.d.ts +68 -0
- package/src/types/OcaMediaStreamEndpointState.js +60 -0
- package/src/types/OcaMediaStreamEndpointStatus.d.ts +44 -0
- package/src/types/OcaMediaStreamEndpointStatus.js +23 -0
- package/src/types/OcaMediaStreamMode.d.ts +83 -0
- package/src/types/OcaMediaStreamMode.js +43 -0
- package/src/types/OcaMediaStreamModeCapability.d.ts +167 -0
- package/src/types/OcaMediaStreamModeCapability.js +81 -0
- package/src/types/OcaMediaStreamModeCapabilityDirection.d.ts +21 -0
- package/src/types/OcaMediaStreamModeCapabilityDirection.js +27 -0
- package/src/types/OcaMediaTrackFunction.d.ts +27 -0
- package/src/types/OcaMediaTrackFunction.js +36 -0
- package/src/types/OcaMediaTransportSession.d.ts +119 -0
- package/src/types/OcaMediaTransportSession.js +58 -0
- package/src/types/OcaMediaTransportSessionConnection.d.ts +63 -0
- package/src/types/OcaMediaTransportSessionConnection.js +32 -0
- package/src/types/OcaMediaTransportSessionConnectionState.d.ts +47 -0
- package/src/types/OcaMediaTransportSessionConnectionState.js +24 -0
- package/src/types/OcaMediaTransportSessionState.d.ts +62 -0
- package/src/types/OcaMediaTransportSessionState.js +52 -0
- package/src/types/OcaMediaTransportSessionStatus.d.ts +43 -0
- package/src/types/OcaMediaTransportSessionStatus.js +23 -0
- package/src/types/OcaMediaTransportTimingParameters.d.ts +54 -0
- package/src/types/OcaMediaTransportTimingParameters.js +31 -0
- package/src/types/OcaMediaVolumePosition.d.ts +46 -0
- package/src/types/OcaMediaVolumePosition.js +23 -0
- package/src/types/OcaMediaVolumePositionType.d.ts +44 -0
- package/src/types/OcaMediaVolumePositionType.js +28 -0
- package/src/types/OcaModelGUID.d.ts +0 -1
- package/src/types/OcaModelGUID.js +0 -1
- package/src/types/OcaNetworkAdvertisingMechanism.d.ts +43 -0
- package/src/types/OcaNetworkAdvertisingMechanism.js +23 -0
- package/src/types/OcaNetworkAdvertisingService.d.ts +56 -0
- package/src/types/OcaNetworkAdvertisingService.js +44 -0
- package/src/types/OcaNetworkInterfaceAssignment.d.ts +99 -0
- package/src/types/OcaNetworkInterfaceAssignment.js +51 -0
- package/src/types/OcaNetworkInterfaceCommand.d.ts +50 -0
- package/src/types/OcaNetworkInterfaceCommand.js +36 -0
- package/src/types/OcaNetworkInterfaceState.d.ts +50 -0
- package/src/types/OcaNetworkInterfaceState.js +36 -0
- package/src/types/OcaNetworkInterfaceStatus.d.ts +42 -0
- package/src/types/OcaNetworkInterfaceStatus.js +22 -0
- package/src/types/OcaNotificationDeliveryMode.d.ts +13 -1
- package/src/types/OcaNotificationDeliveryMode.js +17 -1
- package/src/types/OcaOPath.d.ts +16 -2
- package/src/types/OcaOPath.js +8 -1
- package/src/types/OcaObjectListEventData.d.ts +2 -2
- package/src/types/OcaObjectListEventData.js +2 -2
- package/src/types/OcaObjectSearchResult.d.ts +4 -83
- package/src/types/OcaObjectSearchResult.js +2 -37
- package/src/types/OcaObjectSearchResultFlags.d.ts +4 -33
- package/src/types/OcaObjectSearchResultFlags.js +2 -48
- package/src/types/OcaObservationEventData.d.ts +2 -2
- package/src/types/OcaObservationEventData.js +2 -2
- package/src/types/OcaObservationListEventData.d.ts +2 -2
- package/src/types/OcaObservationListEventData.js +2 -2
- package/src/types/OcaObserverState.d.ts +1 -1
- package/src/types/OcaObserverState.js +1 -1
- package/src/types/OcaParameterMask.d.ts +81 -1
- package/src/types/OcaParameterMask.js +131 -1
- package/src/types/OcaPort.d.ts +7 -5
- package/src/types/OcaPort.js +4 -3
- package/src/types/OcaPortClockMapEntry.d.ts +42 -0
- package/src/types/OcaPortClockMapEntry.js +23 -0
- package/src/types/OcaPortID.d.ts +12 -10
- package/src/types/OcaPortID.js +7 -6
- package/src/types/OcaPortIdentification.d.ts +39 -0
- package/src/types/OcaPortIdentification.js +23 -0
- package/src/types/OcaPortMode.d.ts +4 -36
- package/src/types/OcaPortMode.js +2 -25
- package/src/types/OcaPositionDescriptor.d.ts +6 -6
- package/src/types/OcaPositionDescriptor.js +2 -2
- package/src/types/OcaPositionDescriptorFieldFlags.d.ts +33 -3
- package/src/types/OcaPositionDescriptorFieldFlags.js +53 -3
- package/src/types/OcaPowerSupplyState.d.ts +1 -1
- package/src/types/OcaPowerSupplyState.js +1 -1
- package/src/types/OcaProduct.d.ts +92 -0
- package/src/types/OcaProduct.js +42 -0
- package/src/types/OcaProgramResult.d.ts +39 -0
- package/src/types/OcaProgramResult.js +22 -0
- package/src/types/OcaProgramRunMode.d.ts +24 -0
- package/src/types/OcaProgramRunMode.js +30 -0
- package/src/types/OcaProperty.d.ts +2 -2
- package/src/types/OcaProperty.js +2 -2
- package/src/types/OcaProtoObjectIdentification.d.ts +1 -1
- package/src/types/OcaProtoObjectIdentification.js +1 -1
- package/src/types/OcaProtoPort.d.ts +16 -18
- package/src/types/OcaProtoPort.js +6 -8
- package/src/types/OcaProtoPortClockMapEntry.d.ts +46 -0
- package/src/types/OcaProtoPortClockMapEntry.js +25 -0
- package/src/types/OcaProtoSignalPath.d.ts +12 -10
- package/src/types/OcaProtoSignalPath.js +7 -6
- package/src/types/OcaRamperState.d.ts +19 -18
- package/src/types/OcaRamperState.js +19 -18
- package/src/types/OcaResetCause.d.ts +7 -1
- package/src/types/OcaResetCause.js +8 -0
- package/src/types/OcaSamplingRateConverterType.d.ts +50 -0
- package/src/types/OcaSamplingRateConverterType.js +36 -0
- package/src/types/OcaSecurityType.d.ts +39 -0
- package/src/types/OcaSecurityType.js +28 -0
- package/src/types/OcaSignalPath.d.ts +10 -10
- package/src/types/OcaSignalPath.js +6 -6
- package/src/types/OcaStatus.d.ts +19 -1
- package/src/types/OcaStatus.js +24 -0
- package/src/types/OcaStream.d.ts +2 -2
- package/src/types/OcaStream.js +1 -1
- package/src/types/OcaTask.d.ts +23 -24
- package/src/types/OcaTask.js +7 -7
- package/src/types/OcaTaskCommand.d.ts +2 -7
- package/src/types/OcaTaskCommand.js +2 -9
- package/src/types/OcaTaskExecutionTerminatedEventData.d.ts +64 -0
- package/src/types/OcaTaskExecutionTerminatedEventData.js +30 -0
- package/src/types/OcaTaskGenericState.d.ts +64 -0
- package/src/types/OcaTaskGenericState.js +54 -0
- package/src/types/OcaTaskManagerState.d.ts +1 -0
- package/src/types/OcaTaskManagerState.js +1 -0
- package/src/types/OcaTaskOperationalState.d.ts +43 -0
- package/src/types/OcaTaskOperationalState.js +22 -0
- package/src/types/OcaTaskSchedulerState.d.ts +63 -0
- package/src/types/OcaTaskSchedulerState.js +53 -0
- package/src/types/OcaTaskStatus.d.ts +2 -12
- package/src/types/OcaTaskStatus.js +2 -12
- package/src/types/OcaTaskStatusChangedEventData.d.ts +61 -0
- package/src/types/OcaTaskStatusChangedEventData.js +29 -0
- package/src/types/OcaTime.d.ts +56 -0
- package/src/types/OcaTime.js +32 -0
- package/src/types/OcaTimeDeliveryMechanism.d.ts +167 -0
- package/src/types/OcaTimeDeliveryMechanism.js +191 -0
- package/src/types/OcaTimeDeliveryParameters_StreamEndpoint.d.ts +40 -0
- package/src/types/OcaTimeDeliveryParameters_StreamEndpoint.js +24 -0
- package/src/types/OcaTimePTP.d.ts +4 -51
- package/src/types/OcaTimePTP.js +2 -28
- package/src/types/OcaTimeReferenceType.d.ts +7 -13
- package/src/types/OcaTimeReferenceType.js +6 -14
- package/src/types/OcaTimeSourceAvailability.d.ts +1 -1
- package/src/types/OcaTimeSourceAvailability.js +1 -1
- package/src/types/OcaTimeSourceSyncStatus.d.ts +1 -1
- package/src/types/OcaTimeSourceSyncStatus.js +1 -1
- package/src/types/OcaTransferFunction.d.ts +1 -1
- package/src/types/OcaTransferFunction.js +1 -1
- package/src/types/OcaTypedBlob.d.ts +40 -0
- package/src/types/OcaTypedBlob.js +24 -0
- package/src/types/OcaVariant.d.ts +19 -0
- package/src/types/OcaVariant.js +18 -0
- package/src/types/OcaWhenPhysicalAbsolute.d.ts +39 -0
- package/src/types/OcaWhenPhysicalAbsolute.js +22 -0
- package/src/types/OcaWhenPhysicalRelative.d.ts +39 -0
- package/src/types/OcaWhenPhysicalRelative.js +22 -0
|
@@ -15,102 +15,8 @@ import { RemoteDevice } from '../remote_device';
|
|
|
15
15
|
import { OcaAgent } from './OcaAgent';
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
* objects from a single input value; a **sensor grouper** allows observing many
|
|
21
|
-
* sensor objects via a single output value. Actuator groupers are described
|
|
22
|
-
* below; sensor groupers are TBD. In a working media system, many actuator
|
|
23
|
-
* objects (we will call them **citizens**) will be members of multiple groups.
|
|
24
|
-
* For example, in a multiway stereo sound reinforcement system, the left woofer
|
|
25
|
-
* power amplifier might be controlled by a master gain group, a left-side gain
|
|
26
|
-
* group, and a woofer gain group. To manage the interactions of these multiple
|
|
27
|
-
* memberships, we need a single entity that manages all three of these groups,
|
|
28
|
-
* anticipating the interactions and taking appropriate action. An actuator
|
|
29
|
-
* grouper is such an entity. The grouper:
|
|
30
|
-
*
|
|
31
|
-
* - Registers all the groups and all the citizens.
|
|
32
|
-
*
|
|
33
|
-
* - Remembers which citizens belong to which groups.
|
|
34
|
-
*
|
|
35
|
-
* - Computes new property values when group settings change.
|
|
36
|
-
*
|
|
37
|
-
* - Manages overrange and underrange conditions proactively, so that citizens
|
|
38
|
-
* are never asked to assume out of range values.
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
* For any given grouper instance, all of its citizens will all be of the same
|
|
42
|
-
* class. Applications may have a number of grouper instances, one for each
|
|
43
|
-
* citizen class -- an OcaGain grouper, an OcaFrequency grouper, etc. For
|
|
44
|
-
* controlling each group, the grouper creates a proxy object of the same class
|
|
45
|
-
* as its citizens, so that the same controller logic can be used for either a
|
|
46
|
-
* group or an individual worker. It may be helpful to visualize a grouper as a
|
|
47
|
-
* matrix whose rows are groups, columns are citizens, and each cell contains
|
|
48
|
-
* information relating to the membership of the citizen in the group. This
|
|
49
|
-
* information is called the citizen's **enrollment** in the group.
|
|
50
|
-
* **Mechanism** Each Grouper is an instance of this class (**OcaGrouper**). A
|
|
51
|
-
* **group** is a collection of citizens. A citizen that belongs to a group is
|
|
52
|
-
* called a **member** of that group. There is a many-to-many relationship
|
|
53
|
-
* between groups and citizens -- any citizen can be a member of any number of
|
|
54
|
-
* groups. The purpose of the Grouper is to contain the set of groups and the
|
|
55
|
-
* set of citizens, to remember which citizens belong to which groups, and to
|
|
56
|
-
* compute new aggregate values when settings or readings change. The Grouper
|
|
57
|
-
* itself does not provide direct access to parameter data values. That access
|
|
58
|
-
* is provided by **group proxies** or by **peer to peer** mastering -- see
|
|
59
|
-
* below. It is useful to think of a Grouper as a matrix in which groups are
|
|
60
|
-
* rows and citizens are columns. A cell of the matrix is nonempty whenever its
|
|
61
|
-
* column (=citizen) belongs to its row (=group). Such a cell is called an
|
|
62
|
-
* **enrollment.** **Classes of Grouped Objects** Group members can be actuator
|
|
63
|
-
* or sensor objects. A group whose members are actuators is called an
|
|
64
|
-
* **actuator group**. A group whose members are sensors is called a **sensor
|
|
65
|
-
* group**. All the citizens of a given Grouper must be of the same worker class
|
|
66
|
-
* (sounds communistic, doesn't it :) called the **citizen class**. Typically an
|
|
67
|
-
* application will have multiple Groupers, each one supporting a different
|
|
68
|
-
* citizen class. **Adding Groups** New groups can be added to the Grouper at
|
|
69
|
-
* any time, using OcaGrouper's **AddGroup** method. **Group Proxies; Peer to
|
|
70
|
-
* Peer Mastering** Depending on the setting of its **mode** property, a grouper
|
|
71
|
-
* may be in **master-slave mode** or **peer to peer mode. ** In master-slave
|
|
72
|
-
* mode, each time a caller adds a group to a Grouper instance, the Grouper
|
|
73
|
-
* instance creates an object known as a **group proxy.** Thus, there is one
|
|
74
|
-
* group proxy instance per group.** ** The class of the group proxy is the same
|
|
75
|
-
* as the Grouper's citizen class. For example, for a group of OcaGain
|
|
76
|
-
* actuators, the group proxy is an OcaGain object. The purpose of the group
|
|
77
|
-
* proxy is to allow controllers to access the group's setpoint (for actuator
|
|
78
|
-
* groups) or reading (for sensor groups) in the same way as they would access
|
|
79
|
-
* individual workers of the citizen class. In peer-to-peer mode, no group proxy
|
|
80
|
-
* is created. Instead, the group setpoint is changed whenever *any* member's
|
|
81
|
-
* setpoint is changed. In effect, all the group's members behave as though they
|
|
82
|
-
* were group proxies. **Adding Citizens** New citizens may be added to a
|
|
83
|
-
* Grouper instance at any time, using OcaGrouper's **AddCitizen** method.
|
|
84
|
-
* Newly-added citizens are by default not members of any group. Citizens may be
|
|
85
|
-
* enrolled in groups at any time using OcaGrouper's **SetEnrollment** method.
|
|
86
|
-
* **Deleting** The Grouper allows deletion of groups and citizens at any time,
|
|
87
|
-
* although excessive deletion may lead to sparse memory use, depending on
|
|
88
|
-
* Grouper implementation.**Setpoints, Readings, and Aggregation** **Setpoints
|
|
89
|
-
* and Rules** Each group has a **setpoint** (for actuator groups) or
|
|
90
|
-
* **reading** (for sensor groups) whose value is related to its members'
|
|
91
|
-
* setpoints or readings by the combination of two rules:
|
|
92
|
-
*
|
|
93
|
-
* - The group's **saturation rules**, which control handling of overrange
|
|
94
|
-
* conditions; and
|
|
95
|
-
*
|
|
96
|
-
* - Each member's **aggregation rules**, which determine the algorithms by
|
|
97
|
-
* which aggregate values are computed.
|
|
98
|
-
*
|
|
99
|
-
*
|
|
100
|
-
* ** Scope of the OcaGrouper Class** Many aspects of groupers will vary from
|
|
101
|
-
* product to product. **OcaGrouper** is an abstract class that defines common
|
|
102
|
-
* concepts and terms for groupers, a canonical control interface, and most
|
|
103
|
-
* aspects of membership management . However it but stops short of specifying
|
|
104
|
-
* actual semantics. Implementations will need to define (at least):
|
|
105
|
-
*
|
|
106
|
-
* - Saturation rules
|
|
107
|
-
*
|
|
108
|
-
* - Aggregation rules
|
|
109
|
-
*
|
|
110
|
-
* - Error-handling mechanisms (e.g. what happens when a grouper loses its
|
|
111
|
-
* connection to a citizen, and what happens when it later re-attaches)
|
|
112
|
-
*
|
|
113
|
-
*
|
|
18
|
+
* Control aggregator. See **[AES70-1(Control Aggregation)]** for the normative
|
|
19
|
+
* specification of **OcaGrouper** semantics. **Deprecated** in AES70-2024.
|
|
114
20
|
* @extends OcaAgent
|
|
115
21
|
* @class OcaGrouper
|
|
116
22
|
*/
|
|
@@ -147,28 +53,16 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
147
53
|
*/
|
|
148
54
|
OnGroupsChanged: PropertyEvent<OcaGrouperGroup[]>;
|
|
149
55
|
|
|
150
|
-
/**
|
|
151
|
-
* An alias for OnGroupsChanged
|
|
152
|
-
*/
|
|
153
|
-
OnGroupListChanged: PropertyEvent<OcaGrouperGroup[]>;
|
|
154
56
|
/**
|
|
155
57
|
* This event is emitted whenever Citizens changes.
|
|
156
58
|
*/
|
|
157
59
|
OnCitizensChanged: PropertyEvent<OcaGrouperCitizen[]>;
|
|
158
60
|
|
|
159
|
-
/**
|
|
160
|
-
* An alias for OnCitizensChanged
|
|
161
|
-
*/
|
|
162
|
-
OnCitizenListChanged: PropertyEvent<OcaGrouperCitizen[]>;
|
|
163
61
|
/**
|
|
164
62
|
* This event is emitted whenever Enrollments changes.
|
|
165
63
|
*/
|
|
166
64
|
OnEnrollmentsChanged: PropertyEvent<OcaGrouperEnrollment[]>;
|
|
167
65
|
|
|
168
|
-
/**
|
|
169
|
-
* An alias for OnEnrollmentsChanged
|
|
170
|
-
*/
|
|
171
|
-
OnEnrollmentListChanged: PropertyEvent<OcaGrouperEnrollment[]>;
|
|
172
66
|
/**
|
|
173
67
|
* This event is emitted whenever Mode changes.
|
|
174
68
|
*/
|
|
@@ -178,8 +72,7 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
178
72
|
|
|
179
73
|
/**
|
|
180
74
|
* Adds a group to the grouper and returns its object number. (The group's
|
|
181
|
-
* network address will be the same as the grouper's).
|
|
182
|
-
* indicates whether the group was successfully added.
|
|
75
|
+
* network address will be the same as the grouper's).
|
|
183
76
|
* The return values of this method are
|
|
184
77
|
*
|
|
185
78
|
* - Index of type ``number``
|
|
@@ -193,8 +86,7 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
193
86
|
AddGroup(Name: string): Promise<Arguments<[number, number]>>;
|
|
194
87
|
|
|
195
88
|
/**
|
|
196
|
-
* Deletes a group from the grouper.
|
|
197
|
-
* group was successfully deleted. Note: index values of deleted groups are
|
|
89
|
+
* Deletes a group from the grouper. Note: index values of deleted groups are
|
|
198
90
|
* not reused during the lifetime of the grouper instance.
|
|
199
91
|
*
|
|
200
92
|
* @method OcaGrouper#DeleteGroup
|
|
@@ -205,8 +97,7 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
205
97
|
DeleteGroup(Index: number): Promise<void>;
|
|
206
98
|
|
|
207
99
|
/**
|
|
208
|
-
* Gets the count of groups owned by this grouper.
|
|
209
|
-
* whether the count was successfully retrieved.
|
|
100
|
+
* Gets the count of groups owned by this grouper.
|
|
210
101
|
*
|
|
211
102
|
* @method OcaGrouper#GetGroupCount
|
|
212
103
|
* @returns {Promise<number>}
|
|
@@ -215,8 +106,7 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
215
106
|
GetGroupCount(): Promise<number>;
|
|
216
107
|
|
|
217
108
|
/**
|
|
218
|
-
* Gets the list of groups owned by this grouper.
|
|
219
|
-
* whether the list was successfully retrieved.
|
|
109
|
+
* Gets the list of groups owned by this grouper.
|
|
220
110
|
*
|
|
221
111
|
* @method OcaGrouper#GetGroupList
|
|
222
112
|
* @returns {Promise<OcaGrouperGroup[]>}
|
|
@@ -225,11 +115,10 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
225
115
|
GetGroupList(): Promise<OcaGrouperGroup[]>;
|
|
226
116
|
|
|
227
117
|
/**
|
|
228
|
-
* Adds a
|
|
229
|
-
*
|
|
230
|
-
*
|
|
231
|
-
*
|
|
232
|
-
* q.v.
|
|
118
|
+
* Adds a citizen to the group. This method does not enroll the new citizen in
|
|
119
|
+
* any of the grouper's groups -- it merely makes the citizen available for
|
|
120
|
+
* enrollment. Group enrollment is controlled by the **SetEnrollment(...)**
|
|
121
|
+
* method, q.v.
|
|
233
122
|
*
|
|
234
123
|
* @method OcaGrouper#AddCitizen
|
|
235
124
|
* @param {IOcaGrouperCitizen} Citizen
|
|
@@ -241,7 +130,6 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
241
130
|
|
|
242
131
|
/**
|
|
243
132
|
* Delete a citizen from the grouper (and therefore from all of its groups).
|
|
244
|
-
* The return value indicates whether the citizen was successfully deleted.
|
|
245
133
|
* Note: index values of deleted citizens are not reused during the lifetime
|
|
246
134
|
* of the grouper instance.
|
|
247
135
|
*
|
|
@@ -253,8 +141,7 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
253
141
|
DeleteCitizen(Index: number): Promise<void>;
|
|
254
142
|
|
|
255
143
|
/**
|
|
256
|
-
* Gets the count of citizens registered in this grouper.
|
|
257
|
-
* indicates whether the count was successfully retrieved.
|
|
144
|
+
* Gets the count of citizens registered in this grouper.
|
|
258
145
|
*
|
|
259
146
|
* @method OcaGrouper#GetCitizenCount
|
|
260
147
|
* @returns {Promise<number>}
|
|
@@ -263,8 +150,7 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
263
150
|
GetCitizenCount(): Promise<number>;
|
|
264
151
|
|
|
265
152
|
/**
|
|
266
|
-
* Gets the list of citizens registered in this grouper.
|
|
267
|
-
* indicates whether the list was successfully retrieved.
|
|
153
|
+
* Gets the list of citizens registered in this grouper.
|
|
268
154
|
*
|
|
269
155
|
* @method OcaGrouper#GetCitizenList
|
|
270
156
|
* @returns {Promise<OcaGrouperCitizen[]>}
|
|
@@ -273,8 +159,7 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
273
159
|
GetCitizenList(): Promise<OcaGrouperCitizen[]>;
|
|
274
160
|
|
|
275
161
|
/**
|
|
276
|
-
* Gets membership status for given
|
|
277
|
-
* indicates whether the status was successfully retrieved.
|
|
162
|
+
* Gets membership status for given Citizen in given Group.
|
|
278
163
|
*
|
|
279
164
|
* @method OcaGrouper#GetEnrollment
|
|
280
165
|
* @param {IOcaGrouperEnrollment} Enrollment
|
|
@@ -285,8 +170,7 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
285
170
|
GetEnrollment(Enrollment: IOcaGrouperEnrollment): Promise<boolean>;
|
|
286
171
|
|
|
287
172
|
/**
|
|
288
|
-
* Sets membership status for given target in given group.
|
|
289
|
-
* indicates whether the status was successfully set.
|
|
173
|
+
* Sets membership status for given target in given group.
|
|
290
174
|
*
|
|
291
175
|
* @method OcaGrouper#SetEnrollment
|
|
292
176
|
* @param {IOcaGrouperEnrollment} Enrollment
|
|
@@ -300,8 +184,7 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
300
184
|
): Promise<void>;
|
|
301
185
|
|
|
302
186
|
/**
|
|
303
|
-
* Gets the list of members of the given group.
|
|
304
|
-
* whether the list was successfully retrieved.
|
|
187
|
+
* Gets the list of members of the given group.
|
|
305
188
|
*
|
|
306
189
|
* @method OcaGrouper#GetGroupMemberList
|
|
307
190
|
* @param {number} Index
|
|
@@ -312,8 +195,7 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
312
195
|
GetGroupMemberList(Index: number): Promise<OcaGrouperCitizen[]>;
|
|
313
196
|
|
|
314
197
|
/**
|
|
315
|
-
* Gets the value of the ActuatorOrSensor property.
|
|
316
|
-
* whether the value was successfully retrieved.
|
|
198
|
+
* Gets the value of the **ActuatorOrSensor** property.
|
|
317
199
|
*
|
|
318
200
|
* @method OcaGrouper#GetActuatorOrSensor
|
|
319
201
|
* @returns {Promise<boolean>}
|
|
@@ -322,8 +204,8 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
322
204
|
GetActuatorOrSensor(): Promise<boolean>;
|
|
323
205
|
|
|
324
206
|
/**
|
|
325
|
-
* Sets the value of the ActuatorOrSensor property.
|
|
326
|
-
*
|
|
207
|
+
* Sets the value of the **ActuatorOrSensor** property. Note: only
|
|
208
|
+
* **Actuator** groups are supported in the current version of AES70.
|
|
327
209
|
*
|
|
328
210
|
* @method OcaGrouper#SetActuatorOrSensor
|
|
329
211
|
* @param {boolean} ActuatorOrSensor
|
|
@@ -333,8 +215,7 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
333
215
|
SetActuatorOrSensor(ActuatorOrSensor: boolean): Promise<void>;
|
|
334
216
|
|
|
335
217
|
/**
|
|
336
|
-
* Gets the value of the Mode property.
|
|
337
|
-
* value was successfully retrieved.
|
|
218
|
+
* Gets the value of the **Mode** property.
|
|
338
219
|
*
|
|
339
220
|
* @method OcaGrouper#GetMode
|
|
340
221
|
* @returns {Promise<OcaGrouperMode>}
|
|
@@ -343,8 +224,7 @@ export declare class OcaGrouper extends OcaAgent {
|
|
|
343
224
|
GetMode(): Promise<OcaGrouperMode>;
|
|
344
225
|
|
|
345
226
|
/**
|
|
346
|
-
* Sets the value of the Mode property.
|
|
347
|
-
* value was successfully set.
|
|
227
|
+
* Sets the value of the **Mode** property.
|
|
348
228
|
*
|
|
349
229
|
* @method OcaGrouper#SetMode
|
|
350
230
|
* @param {IOcaGrouperMode} Mode
|
|
@@ -12,102 +12,8 @@ import { make_control_class } from '../make_control_class.js';
|
|
|
12
12
|
import { OcaAgent } from './OcaAgent.js';
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* objects from a single input value; a **sensor grouper** allows observing many
|
|
18
|
-
* sensor objects via a single output value. Actuator groupers are described
|
|
19
|
-
* below; sensor groupers are TBD. In a working media system, many actuator
|
|
20
|
-
* objects (we will call them **citizens**) will be members of multiple groups.
|
|
21
|
-
* For example, in a multiway stereo sound reinforcement system, the left woofer
|
|
22
|
-
* power amplifier might be controlled by a master gain group, a left-side gain
|
|
23
|
-
* group, and a woofer gain group. To manage the interactions of these multiple
|
|
24
|
-
* memberships, we need a single entity that manages all three of these groups,
|
|
25
|
-
* anticipating the interactions and taking appropriate action. An actuator
|
|
26
|
-
* grouper is such an entity. The grouper:
|
|
27
|
-
*
|
|
28
|
-
* - Registers all the groups and all the citizens.
|
|
29
|
-
*
|
|
30
|
-
* - Remembers which citizens belong to which groups.
|
|
31
|
-
*
|
|
32
|
-
* - Computes new property values when group settings change.
|
|
33
|
-
*
|
|
34
|
-
* - Manages overrange and underrange conditions proactively, so that citizens
|
|
35
|
-
* are never asked to assume out of range values.
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
* For any given grouper instance, all of its citizens will all be of the same
|
|
39
|
-
* class. Applications may have a number of grouper instances, one for each
|
|
40
|
-
* citizen class -- an OcaGain grouper, an OcaFrequency grouper, etc. For
|
|
41
|
-
* controlling each group, the grouper creates a proxy object of the same class
|
|
42
|
-
* as its citizens, so that the same controller logic can be used for either a
|
|
43
|
-
* group or an individual worker. It may be helpful to visualize a grouper as a
|
|
44
|
-
* matrix whose rows are groups, columns are citizens, and each cell contains
|
|
45
|
-
* information relating to the membership of the citizen in the group. This
|
|
46
|
-
* information is called the citizen's **enrollment** in the group.
|
|
47
|
-
* **Mechanism** Each Grouper is an instance of this class (**OcaGrouper**). A
|
|
48
|
-
* **group** is a collection of citizens. A citizen that belongs to a group is
|
|
49
|
-
* called a **member** of that group. There is a many-to-many relationship
|
|
50
|
-
* between groups and citizens -- any citizen can be a member of any number of
|
|
51
|
-
* groups. The purpose of the Grouper is to contain the set of groups and the
|
|
52
|
-
* set of citizens, to remember which citizens belong to which groups, and to
|
|
53
|
-
* compute new aggregate values when settings or readings change. The Grouper
|
|
54
|
-
* itself does not provide direct access to parameter data values. That access
|
|
55
|
-
* is provided by **group proxies** or by **peer to peer** mastering -- see
|
|
56
|
-
* below. It is useful to think of a Grouper as a matrix in which groups are
|
|
57
|
-
* rows and citizens are columns. A cell of the matrix is nonempty whenever its
|
|
58
|
-
* column (=citizen) belongs to its row (=group). Such a cell is called an
|
|
59
|
-
* **enrollment.** **Classes of Grouped Objects** Group members can be actuator
|
|
60
|
-
* or sensor objects. A group whose members are actuators is called an
|
|
61
|
-
* **actuator group**. A group whose members are sensors is called a **sensor
|
|
62
|
-
* group**. All the citizens of a given Grouper must be of the same worker class
|
|
63
|
-
* (sounds communistic, doesn't it :) called the **citizen class**. Typically an
|
|
64
|
-
* application will have multiple Groupers, each one supporting a different
|
|
65
|
-
* citizen class. **Adding Groups** New groups can be added to the Grouper at
|
|
66
|
-
* any time, using OcaGrouper's **AddGroup** method. **Group Proxies; Peer to
|
|
67
|
-
* Peer Mastering** Depending on the setting of its **mode** property, a grouper
|
|
68
|
-
* may be in **master-slave mode** or **peer to peer mode. ** In master-slave
|
|
69
|
-
* mode, each time a caller adds a group to a Grouper instance, the Grouper
|
|
70
|
-
* instance creates an object known as a **group proxy.** Thus, there is one
|
|
71
|
-
* group proxy instance per group.** ** The class of the group proxy is the same
|
|
72
|
-
* as the Grouper's citizen class. For example, for a group of OcaGain
|
|
73
|
-
* actuators, the group proxy is an OcaGain object. The purpose of the group
|
|
74
|
-
* proxy is to allow controllers to access the group's setpoint (for actuator
|
|
75
|
-
* groups) or reading (for sensor groups) in the same way as they would access
|
|
76
|
-
* individual workers of the citizen class. In peer-to-peer mode, no group proxy
|
|
77
|
-
* is created. Instead, the group setpoint is changed whenever *any* member's
|
|
78
|
-
* setpoint is changed. In effect, all the group's members behave as though they
|
|
79
|
-
* were group proxies. **Adding Citizens** New citizens may be added to a
|
|
80
|
-
* Grouper instance at any time, using OcaGrouper's **AddCitizen** method.
|
|
81
|
-
* Newly-added citizens are by default not members of any group. Citizens may be
|
|
82
|
-
* enrolled in groups at any time using OcaGrouper's **SetEnrollment** method.
|
|
83
|
-
* **Deleting** The Grouper allows deletion of groups and citizens at any time,
|
|
84
|
-
* although excessive deletion may lead to sparse memory use, depending on
|
|
85
|
-
* Grouper implementation.**Setpoints, Readings, and Aggregation** **Setpoints
|
|
86
|
-
* and Rules** Each group has a **setpoint** (for actuator groups) or
|
|
87
|
-
* **reading** (for sensor groups) whose value is related to its members'
|
|
88
|
-
* setpoints or readings by the combination of two rules:
|
|
89
|
-
*
|
|
90
|
-
* - The group's **saturation rules**, which control handling of overrange
|
|
91
|
-
* conditions; and
|
|
92
|
-
*
|
|
93
|
-
* - Each member's **aggregation rules**, which determine the algorithms by
|
|
94
|
-
* which aggregate values are computed.
|
|
95
|
-
*
|
|
96
|
-
*
|
|
97
|
-
* ** Scope of the OcaGrouper Class** Many aspects of groupers will vary from
|
|
98
|
-
* product to product. **OcaGrouper** is an abstract class that defines common
|
|
99
|
-
* concepts and terms for groupers, a canonical control interface, and most
|
|
100
|
-
* aspects of membership management . However it but stops short of specifying
|
|
101
|
-
* actual semantics. Implementations will need to define (at least):
|
|
102
|
-
*
|
|
103
|
-
* - Saturation rules
|
|
104
|
-
*
|
|
105
|
-
* - Aggregation rules
|
|
106
|
-
*
|
|
107
|
-
* - Error-handling mechanisms (e.g. what happens when a grouper loses its
|
|
108
|
-
* connection to a citizen, and what happens when it later re-attaches)
|
|
109
|
-
*
|
|
110
|
-
*
|
|
15
|
+
* Control aggregator. See **[AES70-1(Control Aggregation)]** for the normative
|
|
16
|
+
* specification of **OcaGrouper** semantics. **Deprecated** in AES70-2024.
|
|
111
17
|
* @extends OcaAgent
|
|
112
18
|
* @class OcaGrouper
|
|
113
19
|
*/
|
|
@@ -115,7 +21,7 @@ export const OcaGrouper = make_control_class(
|
|
|
115
21
|
'OcaGrouper',
|
|
116
22
|
3,
|
|
117
23
|
'\u0001\u0002\u0002',
|
|
118
|
-
|
|
24
|
+
3,
|
|
119
25
|
OcaAgent,
|
|
120
26
|
[
|
|
121
27
|
['AddGroup', 3, 1, [OcaString], [OcaUint16, OcaUint32]],
|
|
@@ -136,25 +42,9 @@ export const OcaGrouper = make_control_class(
|
|
|
136
42
|
],
|
|
137
43
|
[
|
|
138
44
|
['ActuatorOrSensor', [OcaBoolean], 3, 1, false, false, null],
|
|
139
|
-
['Groups', [OcaList(OcaGrouperGroup)], 3, 2, false, false,
|
|
140
|
-
[
|
|
141
|
-
|
|
142
|
-
[OcaList(OcaGrouperCitizen)],
|
|
143
|
-
3,
|
|
144
|
-
3,
|
|
145
|
-
false,
|
|
146
|
-
false,
|
|
147
|
-
['CitizenList'],
|
|
148
|
-
],
|
|
149
|
-
[
|
|
150
|
-
'Enrollments',
|
|
151
|
-
[OcaList(OcaGrouperEnrollment)],
|
|
152
|
-
3,
|
|
153
|
-
4,
|
|
154
|
-
false,
|
|
155
|
-
false,
|
|
156
|
-
['EnrollmentList'],
|
|
157
|
-
],
|
|
45
|
+
['Groups', [OcaList(OcaGrouperGroup)], 3, 2, false, false, null],
|
|
46
|
+
['Citizens', [OcaList(OcaGrouperCitizen)], 3, 3, false, false, null],
|
|
47
|
+
['Enrollments', [OcaList(OcaGrouperEnrollment)], 3, 4, false, false, null],
|
|
158
48
|
['Mode', [OcaGrouperMode], 3, 5, false, false, null],
|
|
159
49
|
],
|
|
160
50
|
[['StatusChange', 3, 1, [OcaGrouperStatusChangeEventData]]]
|
|
@@ -162,8 +52,7 @@ export const OcaGrouper = make_control_class(
|
|
|
162
52
|
|
|
163
53
|
/**
|
|
164
54
|
* Adds a group to the grouper and returns its object number. (The group's
|
|
165
|
-
* network address will be the same as the grouper's).
|
|
166
|
-
* indicates whether the group was successfully added.
|
|
55
|
+
* network address will be the same as the grouper's).
|
|
167
56
|
* The return values of this method are
|
|
168
57
|
*
|
|
169
58
|
* - Index of type ``number``
|
|
@@ -175,9 +64,8 @@ export const OcaGrouper = make_control_class(
|
|
|
175
64
|
* @returns {Promise<Arguments<number,number>>}
|
|
176
65
|
*/
|
|
177
66
|
/**
|
|
178
|
-
* Deletes a group from the grouper.
|
|
179
|
-
*
|
|
180
|
-
* reused during the lifetime of the grouper instance.
|
|
67
|
+
* Deletes a group from the grouper. Note: index values of deleted groups are
|
|
68
|
+
* not reused during the lifetime of the grouper instance.
|
|
181
69
|
*
|
|
182
70
|
* @method OcaGrouper#DeleteGroup
|
|
183
71
|
* @param {number} Index
|
|
@@ -185,26 +73,24 @@ export const OcaGrouper = make_control_class(
|
|
|
185
73
|
* @returns {Promise<void>}
|
|
186
74
|
*/
|
|
187
75
|
/**
|
|
188
|
-
* Gets the count of groups owned by this grouper.
|
|
189
|
-
* whether the count was successfully retrieved.
|
|
76
|
+
* Gets the count of groups owned by this grouper.
|
|
190
77
|
*
|
|
191
78
|
* @method OcaGrouper#GetGroupCount
|
|
192
79
|
* @returns {Promise<number>}
|
|
193
80
|
* A promise which resolves to a single value of type ``number``.
|
|
194
81
|
*/
|
|
195
82
|
/**
|
|
196
|
-
* Gets the list of groups owned by this grouper.
|
|
197
|
-
* whether the list was successfully retrieved.
|
|
83
|
+
* Gets the list of groups owned by this grouper.
|
|
198
84
|
*
|
|
199
85
|
* @method OcaGrouper#GetGroupList
|
|
200
86
|
* @returns {Promise<OcaGrouperGroup[]>}
|
|
201
87
|
* A promise which resolves to a single value of type :class:`OcaGrouperGroup[]`.
|
|
202
88
|
*/
|
|
203
89
|
/**
|
|
204
|
-
* Adds a
|
|
205
|
-
*
|
|
206
|
-
*
|
|
207
|
-
*
|
|
90
|
+
* Adds a citizen to the group. This method does not enroll the new citizen in
|
|
91
|
+
* any of the grouper's groups -- it merely makes the citizen available for
|
|
92
|
+
* enrollment. Group enrollment is controlled by the **SetEnrollment(...)**
|
|
93
|
+
* method, q.v.
|
|
208
94
|
*
|
|
209
95
|
* @method OcaGrouper#AddCitizen
|
|
210
96
|
* @param {IOcaGrouperCitizen} Citizen
|
|
@@ -213,10 +99,9 @@ export const OcaGrouper = make_control_class(
|
|
|
213
99
|
* A promise which resolves to a single value of type ``number``.
|
|
214
100
|
*/
|
|
215
101
|
/**
|
|
216
|
-
* Delete a citizen from the grouper (and therefore from all of its groups).
|
|
217
|
-
*
|
|
218
|
-
*
|
|
219
|
-
* grouper instance.
|
|
102
|
+
* Delete a citizen from the grouper (and therefore from all of its groups).
|
|
103
|
+
* Note: index values of deleted citizens are not reused during the lifetime of
|
|
104
|
+
* the grouper instance.
|
|
220
105
|
*
|
|
221
106
|
* @method OcaGrouper#DeleteCitizen
|
|
222
107
|
* @param {number} Index
|
|
@@ -224,24 +109,21 @@ export const OcaGrouper = make_control_class(
|
|
|
224
109
|
* @returns {Promise<void>}
|
|
225
110
|
*/
|
|
226
111
|
/**
|
|
227
|
-
* Gets the count of citizens registered in this grouper.
|
|
228
|
-
* indicates whether the count was successfully retrieved.
|
|
112
|
+
* Gets the count of citizens registered in this grouper.
|
|
229
113
|
*
|
|
230
114
|
* @method OcaGrouper#GetCitizenCount
|
|
231
115
|
* @returns {Promise<number>}
|
|
232
116
|
* A promise which resolves to a single value of type ``number``.
|
|
233
117
|
*/
|
|
234
118
|
/**
|
|
235
|
-
* Gets the list of citizens registered in this grouper.
|
|
236
|
-
* indicates whether the list was successfully retrieved.
|
|
119
|
+
* Gets the list of citizens registered in this grouper.
|
|
237
120
|
*
|
|
238
121
|
* @method OcaGrouper#GetCitizenList
|
|
239
122
|
* @returns {Promise<OcaGrouperCitizen[]>}
|
|
240
123
|
* A promise which resolves to a single value of type :class:`OcaGrouperCitizen[]`.
|
|
241
124
|
*/
|
|
242
125
|
/**
|
|
243
|
-
* Gets membership status for given
|
|
244
|
-
* indicates whether the status was successfully retrieved.
|
|
126
|
+
* Gets membership status for given Citizen in given Group.
|
|
245
127
|
*
|
|
246
128
|
* @method OcaGrouper#GetEnrollment
|
|
247
129
|
* @param {IOcaGrouperEnrollment} Enrollment
|
|
@@ -250,8 +132,7 @@ export const OcaGrouper = make_control_class(
|
|
|
250
132
|
* A promise which resolves to a single value of type ``boolean``.
|
|
251
133
|
*/
|
|
252
134
|
/**
|
|
253
|
-
* Sets membership status for given target in given group.
|
|
254
|
-
* indicates whether the status was successfully set.
|
|
135
|
+
* Sets membership status for given target in given group.
|
|
255
136
|
*
|
|
256
137
|
* @method OcaGrouper#SetEnrollment
|
|
257
138
|
* @param {IOcaGrouperEnrollment} Enrollment
|
|
@@ -260,8 +141,7 @@ export const OcaGrouper = make_control_class(
|
|
|
260
141
|
* @returns {Promise<void>}
|
|
261
142
|
*/
|
|
262
143
|
/**
|
|
263
|
-
* Gets the list of members of the given group.
|
|
264
|
-
* whether the list was successfully retrieved.
|
|
144
|
+
* Gets the list of members of the given group.
|
|
265
145
|
*
|
|
266
146
|
* @method OcaGrouper#GetGroupMemberList
|
|
267
147
|
* @param {number} Index
|
|
@@ -270,16 +150,15 @@ export const OcaGrouper = make_control_class(
|
|
|
270
150
|
* A promise which resolves to a single value of type :class:`OcaGrouperCitizen[]`.
|
|
271
151
|
*/
|
|
272
152
|
/**
|
|
273
|
-
* Gets the value of the ActuatorOrSensor property.
|
|
274
|
-
* whether the value was successfully retrieved.
|
|
153
|
+
* Gets the value of the **ActuatorOrSensor** property.
|
|
275
154
|
*
|
|
276
155
|
* @method OcaGrouper#GetActuatorOrSensor
|
|
277
156
|
* @returns {Promise<boolean>}
|
|
278
157
|
* A promise which resolves to a single value of type ``boolean``.
|
|
279
158
|
*/
|
|
280
159
|
/**
|
|
281
|
-
* Sets the value of the ActuatorOrSensor property.
|
|
282
|
-
*
|
|
160
|
+
* Sets the value of the **ActuatorOrSensor** property. Note: only **Actuator**
|
|
161
|
+
* groups are supported in the current version of AES70.
|
|
283
162
|
*
|
|
284
163
|
* @method OcaGrouper#SetActuatorOrSensor
|
|
285
164
|
* @param {boolean} ActuatorOrSensor
|
|
@@ -287,16 +166,14 @@ export const OcaGrouper = make_control_class(
|
|
|
287
166
|
* @returns {Promise<void>}
|
|
288
167
|
*/
|
|
289
168
|
/**
|
|
290
|
-
* Gets the value of the Mode property.
|
|
291
|
-
* value was successfully retrieved.
|
|
169
|
+
* Gets the value of the **Mode** property.
|
|
292
170
|
*
|
|
293
171
|
* @method OcaGrouper#GetMode
|
|
294
172
|
* @returns {Promise<OcaGrouperMode>}
|
|
295
173
|
* A promise which resolves to a single value of type :class:`OcaGrouperMode`.
|
|
296
174
|
*/
|
|
297
175
|
/**
|
|
298
|
-
* Sets the value of the Mode property.
|
|
299
|
-
* value was successfully set.
|
|
176
|
+
* Sets the value of the **Mode** property.
|
|
300
177
|
*
|
|
301
178
|
* @method OcaGrouper#SetMode
|
|
302
179
|
* @param {IOcaGrouperMode} Mode
|
|
@@ -334,16 +211,12 @@ export const OcaGrouper = make_control_class(
|
|
|
334
211
|
/**
|
|
335
212
|
* This event is emitted when the property ``Groups`` changes in the remote object.
|
|
336
213
|
* The property ``Groups`` is described in the AES70 standard as follows.
|
|
337
|
-
* List of groups in the grouper. Groups
|
|
338
|
-
* by the
|
|
214
|
+
* List of groups in the grouper. Groups shall be added to and deleted from a
|
|
215
|
+
* grouper by the **OcaGrouper** methods **AddGroup(...)** and
|
|
216
|
+
* **DeleteGroup(...)**, respectively.
|
|
339
217
|
*
|
|
340
218
|
* @member {PropertyEvent<OcaGrouperGroup[]>} OcaGrouper#OnGroupsChanged
|
|
341
219
|
*/
|
|
342
|
-
/**
|
|
343
|
-
* An alias for OnGroupsChanged
|
|
344
|
-
*
|
|
345
|
-
* @member {PropertyEvent<OcaGrouperGroup[]>} OcaGrouper#OnGroupListChanged
|
|
346
|
-
*/
|
|
347
220
|
/**
|
|
348
221
|
* This event is emitted when the property ``Citizens`` changes in the remote object.
|
|
349
222
|
* The property ``Citizens`` is described in the AES70 standard as follows.
|
|
@@ -351,28 +224,18 @@ export const OcaGrouper = make_control_class(
|
|
|
351
224
|
*
|
|
352
225
|
* @member {PropertyEvent<OcaGrouperCitizen[]>} OcaGrouper#OnCitizensChanged
|
|
353
226
|
*/
|
|
354
|
-
/**
|
|
355
|
-
* An alias for OnCitizensChanged
|
|
356
|
-
*
|
|
357
|
-
* @member {PropertyEvent<OcaGrouperCitizen[]>} OcaGrouper#OnCitizenListChanged
|
|
358
|
-
*/
|
|
359
227
|
/**
|
|
360
228
|
* This event is emitted when the property ``Enrollments`` changes in the remote object.
|
|
361
229
|
* The property ``Enrollments`` is described in the AES70 standard as follows.
|
|
362
|
-
* List of
|
|
363
|
-
*
|
|
230
|
+
* List of Grouper's enrollments, i.e. which Citizen(s) belong to which
|
|
231
|
+
* Group(s).
|
|
364
232
|
*
|
|
365
233
|
* @member {PropertyEvent<OcaGrouperEnrollment[]>} OcaGrouper#OnEnrollmentsChanged
|
|
366
234
|
*/
|
|
367
|
-
/**
|
|
368
|
-
* An alias for OnEnrollmentsChanged
|
|
369
|
-
*
|
|
370
|
-
* @member {PropertyEvent<OcaGrouperEnrollment[]>} OcaGrouper#OnEnrollmentListChanged
|
|
371
|
-
*/
|
|
372
235
|
/**
|
|
373
236
|
* This event is emitted when the property ``Mode`` changes in the remote object.
|
|
374
237
|
* The property ``Mode`` is described in the AES70 standard as follows.
|
|
375
|
-
* Switch that determines whether grouper is in
|
|
238
|
+
* Switch that determines whether grouper is in hierarchical mode or
|
|
376
239
|
* peer-to-peer mode.
|
|
377
240
|
*
|
|
378
241
|
* @member {PropertyEvent<OcaGrouperMode>} OcaGrouper#OnModeChanged
|
|
@@ -3,9 +3,9 @@ import { RemoteDevice } from '../remote_device';
|
|
|
3
3
|
import { OcaActuator } from './OcaActuator';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* indicator is not
|
|
6
|
+
* Function that shall turn on some kind of human-detectable indicator for
|
|
7
|
+
* purposes of device identification during network setup. Physical form of
|
|
8
|
+
* indicator is not specified by AES70, so it could be anything, e.g.
|
|
9
9
|
*
|
|
10
10
|
* - LED
|
|
11
11
|
*
|
|
@@ -32,8 +32,7 @@ export declare class OcaIdentificationActuator extends OcaActuator {
|
|
|
32
32
|
constructor(objectNumber: number, device: RemoteDevice);
|
|
33
33
|
|
|
34
34
|
/**
|
|
35
|
-
* Gets the
|
|
36
|
-
* indicates whether the state was successfully retrieved.
|
|
35
|
+
* Gets the value of the **Active** property.
|
|
37
36
|
*
|
|
38
37
|
* @method OcaIdentificationActuator#GetActive
|
|
39
38
|
* @returns {Promise<boolean>}
|
|
@@ -42,8 +41,7 @@ export declare class OcaIdentificationActuator extends OcaActuator {
|
|
|
42
41
|
GetActive(): Promise<boolean>;
|
|
43
42
|
|
|
44
43
|
/**
|
|
45
|
-
* Sets the
|
|
46
|
-
* indicates whether the state was successfully set.
|
|
44
|
+
* Sets the value of the **Active** property.
|
|
47
45
|
*
|
|
48
46
|
* @method OcaIdentificationActuator#SetActive
|
|
49
47
|
* @param {boolean} active
|