edition = "2023";

package milotic_tlbmc;

import "google/protobuf/duration.proto";
import "google/protobuf/timestamp.proto";
import "entity_common_config.proto";
import "i2c_common_config.proto";
import "reading_range_config.proto";
import "reading_transform_config.proto";
import "threshold_config.proto";
import "resource.proto";

enum SensorUnit {
  UNIT_UNKNOWN = 0;
  UNIT_DEGREE_CELSIUS = 1;
  UNIT_WATT = 2;
  UNIT_AMPERE = 3;
  UNIT_VOLT = 4;
  UNIT_REVOLUTION_PER_MINUTE = 5;
  UNIT_PERCENT = 6;
}

message SensorValue {
  double reading = 1;
  google.protobuf.Timestamp timestamp = 2;
}

message SensorAttributesStatic {
  Attributes attributes = 1;
  SensorUnit unit = 2;
  ThresholdConfigs thresholds = 3;
  ReadingRangeConfigs reading_ranges = 4;
  EntityCommonConfig entity_common_config = 5;
  google.protobuf.Duration static_refresh_interval = 6;
  I2cCommonConfig i2c_common_config = 7;
  ReadingTransformConfig reading_transform = 8;
}

message SensorAttributesDynamic {
  State state = 1;
  // The refresh interval of the sensor. Changing refresh interval in the fly is
  // unimplemented. `static_refresh_interval` in the static attributes is used
  // by today's implementation.
  google.protobuf.Duration refresh_interval = 2;
  // Threshold for data points in the buffer reaching which the sensor will
  // trigger a notification.
  int32 data_points_to_notify = 3;
  // The number of data points buffered.
  int32 data_points_buffered = 4;
}
