1syntax = "proto3";
2package binary;
3
4import "github.com/gogo/protobuf/gogoproto/gogo.proto";
5
6option (gogoproto.goproto_getters_all) = false;
7
8message Header {
9  enum Version {
10    option (gogoproto.goproto_enum_prefix) = false;
11
12    VERSION_0 = 0 [(gogoproto.enumvalue_customname) = "Version0"];
13  }
14
15  Version version = 1;
16  string database = 2;
17  string retention_policy = 3;
18  int64 shard_duration = 4 [(gogoproto.stdduration) = true];
19}
20
21message BucketHeader {
22  sfixed64 start = 1;
23  sfixed64 end   = 2;
24}
25
26message BucketFooter {
27
28}
29
30message FloatPoints {
31  repeated sfixed64 timestamps = 1;
32  repeated double values = 2;
33}
34
35message IntegerPoints {
36  repeated sfixed64 timestamps = 1;
37  repeated int64 values = 2;
38}
39
40message UnsignedPoints {
41  repeated sfixed64 timestamps = 1;
42  repeated uint64 values = 2;
43}
44
45message BooleanPoints {
46  repeated sfixed64 timestamps = 1;
47  repeated bool values = 2;
48}
49
50message StringPoints {
51  repeated sfixed64 timestamps = 1;
52  repeated string values = 2;
53}
54
55enum FieldType {
56  option (gogoproto.goproto_enum_prefix) = false;
57
58  FLOAT = 0 [(gogoproto.enumvalue_customname) = "FloatFieldType"];
59  INTEGER = 1 [(gogoproto.enumvalue_customname) = "IntegerFieldType"];
60  UNSIGNED = 2 [(gogoproto.enumvalue_customname) = "UnsignedFieldType"];
61  BOOLEAN = 3 [(gogoproto.enumvalue_customname) = "BooleanFieldType"];
62  STRING = 4 [(gogoproto.enumvalue_customname) = "StringFieldType"];
63}
64
65message SeriesHeader {
66  FieldType field_type = 1;
67  bytes series_key = 2;
68  bytes field = 3;
69}
70
71message SeriesFooter {
72}