blob: 9aaea89d1a73d70b51ef35ecf3af001841794870 [file] [log] [blame]
syntax = "proto2";
package frc971.analysis;
// Specification fo a Channel to pull from the logfile. The name and type will
// be the full name/type of the channel to pull from the logfile. The alias is a
// shorter, easier to type, name that the rest of the logfile will use to refer
// to the channel.
message Channel {
optional string name = 1;
optional string type = 2;
optional string alias = 3;
}
// A specification for a single signal within a Channel.
message Signal {
// Alias for the channel to pull the signal from--this should match an alias
// specified in one of the Channels.
optional string channel = 1;
// Specification of the field to plot. Currently, this only supports simple
// submessages, using dots. To access, e.g., the "bar" member of the "foo"
// submessage, field would be "foo.bar". This does not currently support
// working with repeated fields.
optional string field = 2;
}
// Message representing a single pyplot Axes, with specifications for exactly
// which signals to show in the supplied subplot.
message Axes {
repeated Signal signal = 1;
optional string ylabel = 2;
}
// Message representing a single pyplot figure.
message Figure {
repeated Axes axes = 1;
}
// This configuration specifies what to plot when reading from a logfile.
message PlotConfig {
// List of channels and their aliases to use in the plot.
repeated Channel channel = 1;
// Figures to plot.
repeated Figure figure = 2;
}