TSI_Config/cardbase.h
2025-08-04 20:13:21 +08:00

83 lines
1.6 KiB
C++

#ifndef CARDBASE_H
#define CARDBASE_H
#include "data_config.h"
//#ifdef NAME
// #undef NAME
//#endif
//#define NAME(x) (x, #x)
class CardBase {
public:
CardBase() {}
virtual ~CardBase() {}
int version_;
int slot_; // 从1~15
CardType card_type_;
};
class VariableBase {
public:
VariableBase() {}
virtual ~VariableBase() {}
int id_;
VibChannelType type_;
Filter filter_[3];
General general;
AlarmDangerHigh danger_high;
AlarmAlertHigh alert_high;
AlarmDangerLow danger_low;
AlarmAlertLow alert_low;
General gap_general;
AlarmDangerHigh gap_danger_high;
AlarmAlertHigh gap_alert_high;
AlarmDangerLow gap_danger_low;
AlarmAlertLow gap_alert_low;
FrequencybandOutput freband_output[10];
};
// 位移
class RadialVariable : public VariableBase {
public:
bool alert_latching_;
bool danger_latching_;
RadialImpl not1x_;
RadialImpl smax_;
};
// 加速度与速度
class AccVelVariable : public VariableBase {
public:
bool alert_latching_;
bool danger_latching_;
bool timed_ok_;
bool rms_active_;
bool integrate_active_;
};
// 轴向位移
class ThrustVariable : public VariableBase {
public:
bool alert_latching_;
bool danger_latching_;
bool timed_ok_;
ZeroPosition zero_position;
};
// 动态压力脉动
class PressurePulsationVariable : public VariableBase {
public:
bool fixed;
int sample_rate;
int bandwidth;
int fft_points;
bool spectral_synchron;
int measuring_min;
int measuring_max;
int scale_min;
int scale_max;
bool inherited;
};
#endif // CARDBASE_H