Files
fluxengine/lib/fluxsource/fluxsource.proto
2021-12-05 11:33:19 +00:00

54 lines
1.7 KiB
Protocol Buffer

syntax = "proto2";
import "lib/common.proto";
message HardwareFluxSourceProto {
optional int32 drive = 1 [default = 0, (help) = "which drive to read from"];
optional double revolutions = 2 [default = 1.2, (help) = "number of revolutions to read"];
optional bool sync_with_index = 3 [default = false, (help) = "start reading at index mark"];
optional IndexMode index_mode = 4 [default = INDEXMODE_DRIVE, (help) = "index pulse source"];
optional int32 hard_sector_count = 5 [default = 0, (help) = "number of hard sectors on disk"];
optional bool high_density = 6 [default = true, (help) = "set if this is a high density disk"];
}
message TestPatternFluxSourceProto {
optional double interval_us = 1 [default = 4.0, (help) = "interval between pulses"];
optional double sequence_length_us = 2 [default = 200.0, (help) = "length of test sequence"];
}
message EraseFluxSourceProto {}
message KryofluxFluxSourceProto {
optional string directory = 1 [(help) = "path to Kryoflux stream directory"];
}
message ScpFluxSourceProto {
optional string filename = 1 [default = "flux.scp",
(help) = ".scp file to read flux from"];
}
message CwfFluxSourceProto {
optional string filename = 1 [default = "flux.cwf",
(help) = ".cwf file to read flux from"];
}
message Fl2FluxSourceProto {
optional string filename = 1 [default = "flux.fl2",
(help) = ".fl2 file to read flux from"];
}
message FluxSourceProto {
oneof source {
string fluxfile = 1 [default = "name of source flux file"];
HardwareFluxSourceProto drive = 2;
TestPatternFluxSourceProto test_pattern = 3;
EraseFluxSourceProto erase = 4;
KryofluxFluxSourceProto kryoflux = 5;
ScpFluxSourceProto scp = 6;
CwfFluxSourceProto cwf = 7;
Fl2FluxSourceProto fl2 = 8;
}
}