// satnogs-proto: Protobuf schemas for SatNOGS
// Copyright (C) 2025, Libre Space Foundation <https://libre.space>
//
// This program is free software: you can redistribute it and/or modify it under
// the terms of the GNU General Public License as published by the Free
// Software Foundation, either version 3 of the License, or (at your option)
// any later version.
//
// This program is distributed in the hope that it will be useful, but WITHOUT
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
// details.
//
// You should have received a copy of the GNU General Public License along with
// this program. If not, see <https://www.gnu.org/licenses/>.

edition = "2023";

package satnogsproto;

message FlowgraphConfig {
  double lo_offset = 1;
  uint32 sps = 2;
  string zmq_command_pull_msg_uri = 3 [default = "tcp://127.0.0.1:55010"];
  uint32 zmq_command_pull_msg_timeout_us = 4 [default = 100];
  string zmq_frame_pub_msg_uri = 5 [default = "tcp://127.0.0.1:55000"];
  uint32 zmq_frame_pub_msg_timeout_us = 6 [default = 100];
  string rigctl_ip = 7 [default = "127.0.0.1"];
  uint32 rigctl_port = 8 [default = 4532];
  uint32 preamble_threshold = 9;
  uint32 sync_word_threshold = 10;
  double audio_samp_rate = 11 [default = 48000];
  uint32 pre_padding_length = 12;
  uint32 post_padding_length = 13;
}
