146 lines
2.9 KiB
Protocol Buffer
146 lines
2.9 KiB
Protocol Buffer
|
syntax = "proto2";
|
||
|
|
||
|
package tm;
|
||
|
|
||
|
import "fieldhw.proto";
|
||
|
enum MatchRound {
|
||
|
NONE = 0;
|
||
|
PRACTICE = 1;
|
||
|
QUAL = 2;
|
||
|
QF = 3;
|
||
|
SF = 4;
|
||
|
F = 5;
|
||
|
R16 = 6;
|
||
|
R32 = 7;
|
||
|
R64 = 8;
|
||
|
R128 = 9;
|
||
|
TOP_N = 15;
|
||
|
ROUND_ROBIN = 16;
|
||
|
PRE_ELIM = 20;
|
||
|
ELIM = 21;
|
||
|
}
|
||
|
|
||
|
enum MatchState {
|
||
|
UNPLAYED = 0;
|
||
|
QUEUED = 1;
|
||
|
ON_DECK = 2;
|
||
|
ACTIVE = 3;
|
||
|
SCORED = 4;
|
||
|
SUBMITTED = 5;
|
||
|
}
|
||
|
|
||
|
message MatchTuple {
|
||
|
optional int32 division = 1;
|
||
|
optional tm.MatchRound round = 2;
|
||
|
optional int32 instance = 3;
|
||
|
optional int32 match = 4;
|
||
|
optional int32 session = 5 [default = 0];
|
||
|
}
|
||
|
|
||
|
message AllianceTeamInfo {
|
||
|
enum RoleEnum {
|
||
|
NORMAL = 1;
|
||
|
SURROGATE = 2;
|
||
|
CAPTAIN = 3;
|
||
|
PICK = 4;
|
||
|
}
|
||
|
optional string number = 1;
|
||
|
optional tm.AllianceTeamInfo.RoleEnum role = 2 [default = NORMAL];
|
||
|
optional string name = 3;
|
||
|
optional string location = 4;
|
||
|
optional int32 round = 5 [default = 0];
|
||
|
optional int32 id = 6;
|
||
|
}
|
||
|
|
||
|
message AllianceInfo {
|
||
|
repeated tm.AllianceTeamInfo teams = 1;
|
||
|
optional string name = 2;
|
||
|
}
|
||
|
|
||
|
message MatchInfo {
|
||
|
optional tm.MatchTuple matchTuple = 1;
|
||
|
repeated tm.AllianceInfo alliances = 2;
|
||
|
optional uint32 timeScheduled = 3;
|
||
|
optional tm.Field assignedField = 4;
|
||
|
optional tm.MatchState state = 5;
|
||
|
optional uint32 timeStarted = 6;
|
||
|
optional uint32 timeResumed = 7;
|
||
|
optional uint32 elimOrder = 8;
|
||
|
}
|
||
|
|
||
|
message MatchSchedule {
|
||
|
optional int32 division = 1;
|
||
|
optional tm.MatchRound round = 2;
|
||
|
repeated tm.MatchInfo matches = 3;
|
||
|
}
|
||
|
|
||
|
message MatchList {
|
||
|
optional int32 division = 1;
|
||
|
repeated tm.MatchTuple matches = 2;
|
||
|
}
|
||
|
|
||
|
message ScoreObject {
|
||
|
required string name = 1;
|
||
|
required int32 val = 2;
|
||
|
}
|
||
|
|
||
|
message TeamScore {
|
||
|
optional int32 id = 1;
|
||
|
optional bool dq = 2;
|
||
|
optional bool noShow = 3;
|
||
|
optional bool sitting = 4;
|
||
|
optional string teamNum = 5;
|
||
|
repeated tm.ScoreObject scoreTypes = 6;
|
||
|
}
|
||
|
|
||
|
message AllianceScore {
|
||
|
optional int32 id = 1;
|
||
|
repeated tm.TeamScore teams = 3;
|
||
|
optional int32 place = 4;
|
||
|
repeated tm.ScoreObject scoreTypes = 5;
|
||
|
optional string name = 6;
|
||
|
}
|
||
|
|
||
|
message MatchScore {
|
||
|
optional tm.MatchTuple matchTuple = 1;
|
||
|
repeated tm.AllianceScore alliances = 2;
|
||
|
optional tm.MatchState state = 3 [default = UNPLAYED];
|
||
|
repeated tm.ScoreObject scoreTypes = 4;
|
||
|
optional string gameUuid = 5;
|
||
|
optional int32 timeSaved = 6;
|
||
|
}
|
||
|
|
||
|
message MatchScoreList {
|
||
|
repeated tm.MatchScore scores = 1;
|
||
|
}
|
||
|
|
||
|
message RescoreStatus {
|
||
|
enum RescoreStatusEnum {
|
||
|
ALLOWED = 1;
|
||
|
DISALLOWED = 2;
|
||
|
}
|
||
|
optional tm.RescoreStatus.RescoreStatusEnum status = 1;
|
||
|
}
|
||
|
|
||
|
message OnFieldMatch {
|
||
|
optional tm.MatchTuple matchTuple = 1;
|
||
|
optional tm.Field field = 2;
|
||
|
optional tm.AssignedObjectType.AssignedObjectEnum assignedType = 3 [default = MATCH];
|
||
|
optional uint32 duration = 4;
|
||
|
optional uint32 scId = 5;
|
||
|
}
|
||
|
|
||
|
message SavedMatch {
|
||
|
optional tm.MatchTuple matchTuple = 1;
|
||
|
optional tm.Field field = 2;
|
||
|
}
|
||
|
|
||
|
message AssignedMatch {
|
||
|
optional tm.MatchTuple matchTuple = 1;
|
||
|
optional tm.Field field = 2;
|
||
|
}
|
||
|
|
||
|
message AssignedMatchList {
|
||
|
repeated tm.AssignedMatch match = 1;
|
||
|
}
|