Skip to content

Commit

Permalink
Merge branch 'main' into added_manipulation_TransitionValidToAccuracy…
Browse files Browse the repository at this point in the history
…BelowSpecifiedLimits
  • Loading branch information
ben-Draeger committed Nov 27, 2024
2 parents 3e89897 + 7cdb1df commit 390340a
Show file tree
Hide file tree
Showing 8 changed files with 78 additions and 6 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added

- manipulation TransitionValidToAccuracyBelowSpecifiedLimits for metrics
- manipulation DisplayMetricWithDifferentUnit for metrics
- manipulation GetMetricDeterminationMode for metrics
- manipulation PhysicallyDisconnectRemovableSubsystemAfterPhysicalConnectorProvided
- manipulation SetActiveModeOfOperation for metrics
- manipulation PhysicallyDisconnectRemovableSubsystemAfterSettingActivationStateOnOrStndBy
Expand Down
24 changes: 24 additions & 0 deletions src/t2iapi/biceps/mdibversiongroup.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
/*
This Source Code Form is subject to the terms of the MIT License.
Copyright (c) 2024 Draegerwerk AG & Co. KGaA.
SPDX-License-Identifier: MIT
*/

syntax = "proto3";

package t2iapi.biceps;

option java_package = "com.draeger.medical.t2iapi.biceps";
option java_outer_classname = "MdibVersionGroupProto";

import "google/protobuf/wrappers.proto";

/*
Represents the attributeGroup MdibVersionGroup (defined in IEEE Std 11073-10207-2017).
*/
message MdibVersionGroup {
google.protobuf.UInt64Value mdib_version = 1; // optional MdibVersion when finishing the rpc
string sequence_id = 2; // SequenceId when finishing the rpc
google.protobuf.UInt64Value instance_id = 3; // optional InstanceId when finishing the rpc
}
12 changes: 11 additions & 1 deletion src/t2iapi/device/device_responses.proto
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
This Source Code Form is subject to the terms of the MIT License.
Copyright (c) 2022 Draegerwerk AG & Co. KGaA.
Copyright (c) 2022, 2024 Draegerwerk AG & Co. KGaA.
SPDX-License-Identifier: MIT
*/
Expand All @@ -11,6 +11,7 @@ package t2iapi.device;

import "t2iapi/basic_responses.proto";
import "t2iapi/biceps/metadata.proto";
import "t2iapi/biceps/mdibversiongroup.proto";

option java_package = "com.draeger.medical.t2iapi.device";
option java_outer_classname = "DeviceResponses";
Expand Down Expand Up @@ -73,3 +74,12 @@ message InsertContainmentTreeEntryForSequenceIdResponse{
string handle = 2; // descriptor handle which is representing the requested BICEPS CONTAINMENT TREE ENTRY
// in the device's current MDIB
}

/*
Response containing the BasicResponse and the MdibVersionGroup for the requested
pm:AbstractDeviceComponentDescriptor handle to indicate the time of the next calibration to the USER.
*/
message IndicateTimeOfNextCalibrationToUserResponse{
BasicResponse status = 1; // status of the rpc
t2iapi.biceps.MdibVersionGroup mdib_version_group = 2; // MdibVersion attributes when finishing the rpc
}
10 changes: 8 additions & 2 deletions src/t2iapi/device/service.proto
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
This Source Code Form is subject to the terms of the MIT License.
Copyright (c) 2022 Draegerwerk AG & Co. KGaA.
Copyright (c) 2022, 2023, 2024 Draegerwerk AG & Co. KGaA.
SPDX-License-Identifier: MIT
*/
Expand Down Expand Up @@ -181,7 +181,7 @@ service DeviceService {
Indicate the time of the next calibration to the USER for the given pm:AbstractDeviceComponentDescriptor handle.
*/
rpc IndicateTimeOfNextCalibrationToUser (BasicHandleRequest)
returns (BasicResponse);
returns (t2iapi.device.IndicateTimeOfNextCalibrationToUserResponse);

/*
Make available the BICEPS CONTAINMENT TREE ENTRY (as defined in IEEE Std 11073-10700-2022) that was previously
Expand Down Expand Up @@ -222,4 +222,10 @@ service DeviceService {
*/
rpc InsertContainmentTreeEntryForSequenceId (InsertContainmentTreeEntryForSequenceIdRequest)
returns (InsertContainmentTreeEntryForSequenceIdResponse);

/*
Shut down the device gracefully and then restart it. When restarting, the device should have a new
pm:MdibVersionGroup/@SequenceId.
*/
rpc ShutDownAndRestartDevice (google.protobuf.Empty) returns (BasicResponse);
}
2 changes: 1 addition & 1 deletion src/t2iapi/device/types.proto
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
This Source Code Form is subject to the terms of the MIT License.
Copyright (c) 2022 Draegerwerk AG & Co. KGaA.
Copyright (c) 2022, 2023, 2024 Draegerwerk AG & Co. KGaA.
SPDX-License-Identifier: MIT
*/
Expand Down
11 changes: 10 additions & 1 deletion src/t2iapi/metric/metric_responses.proto
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ syntax = "proto3";
package t2iapi.metric;

import "t2iapi/basic_responses.proto";
import "t2iapi/metric/types.proto";

option java_package = "com.draeger.medical.t2iapi.metric";
option java_outer_classname = "MetricResponses";
Expand All @@ -31,4 +32,12 @@ message CalibrateMetricResponse {
message IsComputerControlledResponse {
BasicResponse status = 1; // the status of the rpc indicating whether or not it was successful
bool answer = 2; // true if metric is computer-controlled, otherwise false
}
}

/*
Response indicating whether a metric is determined episodically or periodically
*/
message GetMetricDeterminationMode {
BasicResponse status = 1; // the status of the rpc indicating whether or not it was successful
MetricDeterminationMode answer = 2; // 0 - Episodically, 1 - Periodically
}
15 changes: 14 additions & 1 deletion src/t2iapi/metric/service.proto
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
This Source Code Form is subject to the terms of the MIT License.
Copyright (c) 2022 Draegerwerk AG & Co. KGaA.
Copyright (c) 2022, 2023, 2024 Draegerwerk AG & Co. KGaA.
SPDX-License-Identifier: MIT
*/
Expand Down Expand Up @@ -121,6 +121,19 @@ service MetricService {
rpc SetActiveModeOfOperation (BasicHandleRequest)
returns (BasicResponse);

/*
Requests if the metric with the given handle is determined episodically or periodically.
*/
rpc GetMetricDeterminationMode (BasicHandleRequest)
returns (t2iapi.metric.GetMetricDeterminationMode);

/*
Request for the metric with the given handle to display its @Value or @Samples to a USER with a different
pm:Unit than the one which is currently provided in the respective descriptor.
*/
rpc DisplayMetricWithDifferentUnit (BasicHandleRequest)
returns (BasicResponse);

/*
For the metric with the provided handle perform the following transition:
- provide pm:MetricValue/@Value resp. @Samples with pm:MetricQuality/@Validity = 'Vld' then
Expand Down
8 changes: 8 additions & 0 deletions src/t2iapi/metric/types.proto
Original file line number Diff line number Diff line change
Expand Up @@ -69,3 +69,11 @@ enum MetricStatus {
METRIC_STATUS_DE_INITIALIZED_AND_NOT_PERFORMING_OR_APPLYING = 4;
METRIC_STATUS_FAILED = 5;
}

/*
Represents whether a METRIC is determined episodically or periodically.
*/
enum MetricDeterminationMode {
METRIC_DETERMINATION_MODE_EPISODICALLY = 0;
METRIC_DETERMINATION_MODE_PERIODICALLY = 1;
}

0 comments on commit 390340a

Please sign in to comment.