3 Star 0 Fork 0

Admin/legacy-syrsa-parser

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
cache.go 3.57 KB
一键复制 编辑 原始数据 按行查看 历史
钟林峰 提交于 2020-08-18 15:54 +08:00 . initial commit
package main
import "time"
const (
RUDDER_SENSOR_ANGLE_KEY = "rudderSensorAngle"
RUDDER_HEADING_SET_KEY = "rudderHeadingSet"
RUDDER_SLEW_RATE_KEY = "rudderSlewRate"
RUDDER_COMMAND_ANGLE_KEY = "rudderCommandAngle"
RUDDER_PUMP_OP_MODE_KEY = "rudderPumpOpMode"
RUDDER_COMMAND_MODE = "rudderCommandMode"
RUDDER_ALARM_OVERLOAD_NO1 = "rudderAlarmOverloadNo1" // 1
RUDDER_ALARM_PHASE_LOST_NO1 = "rudderAlarmPhaseLostNo1" // 2
RUDDER_ALARM_POWER_LOST_NO1 = "rudderAlarmPowerLstNo1" // 3
RUDDER_ALARM_LOW_LEVEL_NO1 = "rudderAlarmLowLevelNo1" // 4
RUDDER_ALARM_FILTER_BLOCK_NO1 = "rudderAlarmFilterBlockNo1" // 5
RUDDER_ALARM_HIGH_OIL_TEMP_NO1 = "rudderAlarmHighOilTempNo1" // 6
RUDDER_ALARM_LOW_OIL_PRESSURE_NO1 = "rudderAlarmLowOilPressureNo1" // 7
RUDDER_ALARM_GROUND_FAILURE = "rudderAlarmGroundFailure" // 8
RUDDER_ALARM_HYDRAULIC_BLOCK_NO1 = "rudderAlarmHydraulicBlockNo1" // 9
RUDDER_ALARM_OVERLOAD_NO2 = "rudderAlarmOverloadNo2" // 10
RUDDER_ALARM_PHASE_LOST_NO2 = "rudderAlarmPhaseLostNo2" // 11
RUDDER_ALARM_POWER_LOST_NO2 = "rudderAlarmPowerLstNo2" // 12
RUDDER_ALARM_LOW_LEVEL_NO2 = "rudderAlarmLowLevelNo2" // 13
RUDDER_ALARM_FILTER_BLOCK_NO2 = "rudderAlarmFilterBlockNo2" // 14
RUDDER_ALARM_HIGH_OIL_TEMP_NO2 = "rudderAlarmHighOilTempNo2" // 15
RUDDER_ALARM_LOW_OIL_PRESSURE_NO2 = "rudderAlarmLowOilPressureNo2" // 16
RUDDER_ALARM_OFFSET = "rudderAlarmOffset" // 17
RUDDER_ALARM_HYDRAULIC_BLOCK_NO2 = "rudderAlarmHydraulicBlockNo2" // 18
RUDDER_ALARM_OP_POWER_LOST_NO1 = "rudderAlarmOpPowerLostNo1" // 19
RUDDER_ALARM_OP_POWER_LOST_NO2 = "rudderAlarmOpPowerLostNo2" // 20
RUDDER_ALARM_EMERG_POWER_LOST = "rudderEmergPowerLost" // 21
RUDDER_ALARM_DRIFT = "rudderAlarmDrift" // 22
RUDDER_ALARM_CLOSE_LOOP = "rudderAlarmCloseLoop" // 23
RUDDER_ALARM_AUTO_POWER = "rudderAlarmAutoPower" // 24
)
var alarms = []struct {
key string
}{
{
key: RUDDER_ALARM_OVERLOAD_NO1,
},
{
key: RUDDER_ALARM_PHASE_LOST_NO1,
},
{
key: RUDDER_ALARM_POWER_LOST_NO1,
},
{
key: RUDDER_ALARM_LOW_LEVEL_NO1,
},
{
key: RUDDER_ALARM_FILTER_BLOCK_NO1,
},
{
key: RUDDER_ALARM_HIGH_OIL_TEMP_NO1,
},
{
key: RUDDER_ALARM_LOW_OIL_PRESSURE_NO1,
},
{
key: RUDDER_ALARM_GROUND_FAILURE,
},
{
key: RUDDER_ALARM_HYDRAULIC_BLOCK_NO1,
},
{
key: RUDDER_ALARM_OVERLOAD_NO2,
},
{
key: RUDDER_ALARM_PHASE_LOST_NO2,
},
{
key: RUDDER_ALARM_POWER_LOST_NO2,
},
{
key: RUDDER_ALARM_LOW_LEVEL_NO2,
},
{
key: RUDDER_ALARM_FILTER_BLOCK_NO2,
},
{
key: RUDDER_ALARM_HIGH_OIL_TEMP_NO2,
},
{
key: RUDDER_ALARM_LOW_OIL_PRESSURE_NO2,
},
{
key: RUDDER_ALARM_OFFSET,
},
{
key: RUDDER_ALARM_HYDRAULIC_BLOCK_NO2,
},
{
key: RUDDER_ALARM_OP_POWER_LOST_NO1,
},
{
key: RUDDER_ALARM_OP_POWER_LOST_NO2,
},
{
key: RUDDER_ALARM_EMERG_POWER_LOST,
},
{
key: RUDDER_ALARM_DRIFT,
},
{
key: RUDDER_ALARM_CLOSE_LOOP,
},
{
key: RUDDER_ALARM_AUTO_POWER,
},
}
type cache struct {
data map[string]entry
}
type entry struct {
Value interface{}
Timestamp time.Time
Static bool
}
func (c *cache) set(m map[string]entry) error {
for k, v := range m {
err := c.setEntry(k, v)
if err != nil {
return err
}
}
return nil
}
func (c *cache) setEntry(key string, v entry) error {
if c.data == nil {
c.data = map[string]entry{}
}
c.data[key] = v
return nil
}
func (c *cache) getAll() map[string]entry {
return c.data
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/shipnet_masterclock/legacy-syrsa-parser.git
git@gitee.com:shipnet_masterclock/legacy-syrsa-parser.git
shipnet_masterclock
legacy-syrsa-parser
legacy-syrsa-parser
master

搜索帮助