data/RMF.proto
syntax="proto2";
package RMF;
message CategoryProto {
required string name=21;
message Float {
required string name=1;
message Entry {
optional double value=1;
};
repeated Entry entry=2;
};
repeated Float float_list=1;
message PerFrameFloat {
required string name=1;
message Entry {
message Frame {
optional double value=1;
};
repeated Frame frame=1;
};
repeated Entry entry=2;
};
repeated PerFrameFloat per_frame_float_list=2;
message Int {
required string name=1;
message Entry {
optional int32 value=1;
};
repeated Entry entry=2;
};
repeated Int int_list=3;
message PerFrameInt {
required string name=1;
message Entry {
message Frame {
optional int32 value=1;
};
repeated Frame frame=1;
};
repeated Entry entry=2;
};
repeated PerFrameInt per_frame_int_list=4;
message String {
required string name=1;
message Entry {
optional string value=1;
};
repeated Entry entry=2;
};
repeated String string_list=5;
message PerFrameString {
required string name=1;
message Entry {
message Frame {
optional string value=1;
};
repeated Frame frame=1;
};
repeated Entry entry=2;
};
repeated PerFrameString per_frame_string_list=6;
message Index {
required string name=1;
message Entry {
optional int32 value=1;
};
repeated Entry entry=2;
};
repeated Index index_list=7;
message PerFrameIndex {
required string name=1;
message Entry {
message Frame {
optional int32 value=1;
};
repeated Frame frame=1;
};
repeated Entry entry=2;
};
repeated PerFrameIndex per_frame_index_list=8;
message NodeID {
required string name=1;
message Entry {
optional int32 value=1;
};
repeated Entry entry=2;
};
repeated NodeID node_id_list=9;
message PerFrameNodeID {
required string name=1;
message Entry {
message Frame {
optional int32 value=1;
};
repeated Frame frame=1;
};
repeated Entry entry=2;
};
repeated PerFrameNodeID per_frame_node_id_list=10;
message Floats {
required string name=1;
message Entry {
repeated double value=1;
};
repeated Entry entry=2;
};
repeated Floats floats_list=11;
message PerFrameFloats {
optional string name=1;
message Entry {
message Frame {
repeated double value=1;
};
repeated Frame frame=1;
};
repeated Entry entry=2;
};
repeated PerFrameFloats per_frame_floats_list=12;
message Ints {
required string name=1;
message Entry {
repeated int32 value=1;
};
repeated Entry entry=2;
};
repeated Ints ints_list=13;
message PerFrameInts {
required string name=1;
message Entry {
message Frame {
repeated int32 value=1;
};
repeated Frame frame=1;
};
repeated Entry entry=2;
};
repeated PerFrameInts per_frame_ints_list=14;
message Strings {
required string name=1;
message Entry {
repeated string value=1;
};
repeated Entry entry=2;
};
repeated Strings strings_list=15;
message PerFrameStrings {
required string name=1;
message Entry {
message Frame {
repeated string value=1;
};
repeated Frame frame=1;
};
repeated Entry entry=2;
};
repeated PerFrameStrings per_frame_strings_list=16;
message Indexes {
required string name=1;
message Entry {
repeated int32 value=1;
};
repeated Entry entry=2;
};
repeated Indexes indexes_list=17;
message PerFrameIndexes {
required string name=1;
message Entry {
message Frame {
repeated int32 value=1;
};
repeated Frame frame=1;
};
repeated Entry entry=2;
};
repeated PerFrameIndexes per_frame_indexes_list=18;
message NodeIDs {
required string name=1;
message Entry {
repeated int32 value=1;
};
repeated Entry entry=2;
};
repeated NodeIDs node_ids_list=19;
message PerFrameNodeIDs {
required string name=1;
message Entry {
message Frame {
repeated int32 value=1;
};
repeated Frame frame=1;
};
repeated Entry entry=2;
};
repeated PerFrameNodeIDs per_frame_node_ids_list=20;
};
message RMFProto {
optional string description=1;
message ArityData {
repeated CategoryProto category=1;
};
repeated ArityData arity=2;
message Node {
required int32 type =1;
required string name=2;
repeated int32 children=3;
};
repeated Node node=3;
message Pair {
required int32 type =1;
required int32 id0=2;
required int32 id1=3;
};
repeated Pair pair=4;
message Triplet {
required int32 type =1;
required int32 id0=2;
required int32 id1=3;
required int32 id2=4;
};
repeated Triplet triplet=5;
message Quad {
required int32 type =1;
required int32 id0=2;
required int32 id1=3;
required int32 id2=4;
required int32 id3=5;
};
repeated Quad quad=6;
message FrameData {
optional string comment=1;
};
repeated FrameData frame=7;
};