# refTwePacket()

本関数は[`spTwePacket`](https://mwm5.twelite.info/0.8/references/parser/twefmt/twepacket)オブジェクトを[`TwePacket&`](https://mwm5.twelite.info/0.8/references/parser/twefmt/twepacket)として参照します。

```cpp
TwePacket& refTwePacket(spTwePacket& p)

//例
  auto&& pkt = newTwePacket(p, len); // パケットの生成
  
  if (refTwePacket(pkt).get_type() == E_PKT::PKT_TWELITE) {
    // App_Twelite の処理
  }
```

{% hint style="info" %}
この関数は、`->`演算子や`*`演算子を極力使用しない方針でライブラリを設定しているため、スマートポインタの参照を行うために用意しています。

上記の判定式を`(pkt && pkt->get_type() == E_PKT::PKT_TWELITE)`と記述しても同じ判定が得られます。
{% endhint %}
