M
M
MWM5 Library
1.0.9
検索
K

TwePacketPal

TWELITE PALのパケット
TwePacketPalクラスは、TWELITE PALのパケットデータを解釈したものです。このクラスはTWELITE PAL(センサーデータなど上り方向)共通に取り扱います。
class TwePacketPal : public TwePacket, public DataPal { ... };
PAL共通データはDataPalに定義されています。
PALの各センサー基板特有のデータを取り出すためのジェネレータ関数を用意しています。

spTwePacketからの参照

TwePacketPal& refTwePacketPal(spTwePacket& p)
spTwePacketオブジェクトからTwePacketPalオブジェクトを参照します。spTwePacketTwePacketPal以外が格納されている場合は、未解釈のオブジェクトを戻します。

実行例

if (parse_ascii) { // アスキー形式のパーサーの解釈完了
if (identify_packet_type(parse_ascii.get_payload()) == E_PKT::PKT_PAL) {
auto&& pkt = newTwePacket(parse_ascii.get_payload(), E_PKT::PKT_PAL);
if (pkt == E_PKT::PKT_PAL) { // パケット解釈成功時
auto&& pal = refTwePacketPal(pkt);
// 開閉センサーパル
if (pal.u8palpcb == E_PAL_PCB::MAG) {
PalMag mag = pal.get_PalMag();
if (mag.u8MagStat == 0) {
// OPEN
} else {
// CLOSE
}
}
}
}
}

パケットデータ定関数

has_palEvent()

bool has_PalEvent()
bool is_PalEvent()
パケットにイベント情報が含まれるかを判定します。

get_PalDataType()

E_PAL_DATA_TYPE get_PalDataType()
パケットの種別を判定します。種別はE_PAL_DATA_TYPEとして判定されます。

has_data_info()

bool has_data_info()
パケットプロパティ(パケットの補助情報)が含まれているか判定します。含まれている場合はPalDataInfoで定義されるメンバーにアクセスできます。

is_data_source_timer()

bool is_data_source_timer()
パケットプロパティが存在する場合に呼び出しは有効。タイマー由来からの送信の場合trueを返します。

ジェネレータ関数

センサーPALの各種データを取り出すためのジェネレータ関数です。

get_PalMag()

PalMag get_PalMag()
.u8palpcb==E_PAL_PCB::MAGの場合、開閉センサーパルのデータPalMagを取り出します。

get_PalAmb()

PalAmb get_PalAmb()
.u8palpcb==E_PAL_PCB::AMBの場合、環境センサーパルのデータPalAmbを取り出します。

get_PalMot()

PalMot get_PalMot()
.u8palpcb==E_PAL_PCB::MOTの場合、動作センサーパルのデータPalMotを取り出します。

get_PalEvent()

PalEvent get_PalEvent()
.is_PalEvent()trueの場合PalEvent(PALイベント)を取り出します。
最終更新 2yr ago