blitzer-v2/db/config.go
2025-08-09 20:38:37 +02:00

40 lines
1.2 KiB
Go

package db
import (
"github.com/sirupsen/logrus"
)
var c Config
type Config struct {
Base
RadarHeight int `form:"radar_height" json:"radar_height"`
RadarAngle int `form:"radar_angle" json:"radar_angle"`
RadarMinDistance int `form:"radar_min_distance" json:"radar_min_distance"`
RadarMaxDistance int `form:"radar_max_distance" json:"radar_max_distance"`
RadarMinSpeed int `form:"radar_min_speed" json:"radar_min_speed"`
RadarMaxSpeed int `form:"radar_max_speed" json:"radar_max_speed"`
RadarWaveform bool `form:"radar_waveform" json:"radar_waveform"`
TriggerDistance int `form:"trigger_distance" json:"trigger_distance"`
TriggerSpeed int `form:"trigger_speed" json:"trigger_speed"`
TriggerOutput int `form:"trigger_output" json:"trigger_output"`
SpeedOutput int `form:"speed_output" json:"speed_output"`
TargetOutput int `form:"target_output" json:"target_output"`
}
func initConfig() {
if err := DB.FirstOrCreate(&c).Error; err != nil {
logrus.Fatal("could not init db config")
}
}
func SetConfig(sc Config) error {
c = sc
if err := DB.Save(&c).Error; err != nil {
return err
}
return nil
}
func GetConfig() *Config {
return &c
}