2022-01-07 14:47:51 +01:00
|
|
|
syntax = "proto2";
|
2019-02-17 15:26:11 +01:00
|
|
|
package proto;
|
|
|
|
|
|
|
|
message HyperionRequest {
|
|
|
|
enum Command {
|
|
|
|
COLOR = 1;
|
|
|
|
IMAGE = 2;
|
|
|
|
CLEAR = 3;
|
|
|
|
CLEARALL = 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
// command specification
|
|
|
|
required Command command = 1;
|
|
|
|
|
|
|
|
// extensions to define all specific requests
|
|
|
|
extensions 10 to 100;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ColorRequest {
|
|
|
|
extend HyperionRequest {
|
|
|
|
optional ColorRequest colorRequest = 10;
|
|
|
|
}
|
|
|
|
|
|
|
|
// priority to use when setting the color
|
|
|
|
required int32 priority = 1;
|
|
|
|
|
|
|
|
// integer value containing the rgb color (0x00RRGGBB)
|
|
|
|
required int32 RgbColor = 2;
|
|
|
|
|
|
|
|
// duration of the request (negative results in infinite)
|
|
|
|
optional int32 duration = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ImageRequest {
|
|
|
|
extend HyperionRequest {
|
|
|
|
optional ImageRequest imageRequest = 11;
|
|
|
|
}
|
|
|
|
|
|
|
|
// priority to use when setting the image
|
|
|
|
required int32 priority = 1;
|
|
|
|
|
|
|
|
// width of the image
|
|
|
|
required int32 imagewidth = 2;
|
|
|
|
|
|
|
|
// height of the image
|
|
|
|
required int32 imageheight = 3;
|
|
|
|
|
2022-01-09 17:23:50 +01:00
|
|
|
// image data (either RGB or RGBA data can be transferred)
|
2019-02-17 15:26:11 +01:00
|
|
|
required bytes imagedata = 4;
|
|
|
|
|
|
|
|
// duration of the request (negative results in infinite)
|
|
|
|
optional int32 duration = 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ClearRequest {
|
|
|
|
extend HyperionRequest {
|
|
|
|
optional ClearRequest clearRequest = 12;
|
|
|
|
}
|
|
|
|
|
|
|
|
// priority which need to be cleared
|
|
|
|
required int32 priority = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message HyperionReply {
|
|
|
|
enum Type {
|
|
|
|
REPLY = 1;
|
|
|
|
VIDEO = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
// Identifies which field is filled in.
|
|
|
|
required Type type = 1;
|
|
|
|
|
|
|
|
// flag indication success or failure
|
|
|
|
optional bool success = 2;
|
|
|
|
|
|
|
|
// string indicating the reason for failure (if applicable)
|
|
|
|
optional string error = 3;
|
|
|
|
|
|
|
|
// Proto Messages for video mode
|
|
|
|
optional int32 video = 4;
|
|
|
|
}
|