Zao SDK for Jetson / libzao-endpoint API リファレンス 1.5.0.0 (2024-09-25)
Loading...
Searching...
No Matches
Public Member Functions | List of all members
zao::endpoint::serial::TunnelInterface Class Referenceabstract

シリアル通信トンネリング機能のインターフェース More...

#include <TunnelInterface.hpp>

Collaboration diagram for zao::endpoint::serial::TunnelInterface:
Collaboration graph
[legend]

Public Member Functions

virtual bool GetRequestedConfig (TunnelConfig &config) const noexcept=0
 要求されたシリアルトンネリング設定を取得する。
 
virtual std::shared_future< TunnelConfigGetConfigRequestStatus () const noexcept=0
 設定要求状態を取得するshared_futureを取得する。
 
virtual void SetAvailable (bool new_value) noexcept=0
 アクティブ状態にできるか否かを設定する。
 
virtual void SetMaxPacketLength (std::size_t length)=0
 最大パケット長を設定する。
 
virtual void ResetQueue ()=0
 キューされているデータを削除する。
 
virtual void Queue (TimestampInterface::Rep timestamp, const void *bytes, std::size_t length)=0
 送信データをキューする。
 
virtual void SetTimestamp (const std::shared_ptr< TimestampInterface > &timestamp)=0
 このストリームで用いるタイムスタンプを設定する。
 
void RegisterCallback (const std::shared_ptr< TunnelCallbackInterface > &listener, bool use_weak_ptr)
 コールバックの送信先をshared_ptrまたはweak_ptrで登録する
 
virtual void RegisterCallback (const std::shared_ptr< TunnelCallbackInterface > &listener)=0
 コールバックの送信先をshared_ptrで登録する
 
virtual void RegisterCallback (const std::weak_ptr< TunnelCallbackInterface > &listener_weak, StoreAsWeakPtrType)=0
 コールバックの送信先をweak_ptrで登録する
 
virtual void RegisterCallback (std::unique_ptr< TunnelCallbackInterface > &&listener)=0
 コールバックの送信先をunique_ptrで登録する
 

Detailed Description

シリアル通信トンネリング機能のインターフェース

Member Function Documentation

◆ GetConfigRequestStatus()

virtual std::shared_future< TunnelConfig > zao::endpoint::serial::TunnelInterface::GetConfigRequestStatus ( ) const
pure virtualnoexcept

設定要求状態を取得するshared_futureを取得する。

Note
既に設定要求受信済みの場合、 準備完了状態のオブジェクトを返却する。
Returns
設定要求受信時にそのフォーマットを返却する shared_futureオブジェクト

◆ GetRequestedConfig()

virtual bool zao::endpoint::serial::TunnelInterface::GetRequestedConfig ( TunnelConfig config) const
pure virtualnoexcept

要求されたシリアルトンネリング設定を取得する。

Parameters
config設定の格納先
Return values
true設定が決定している(configの内容が有効)
false設定は未決定である(configの内容は無効)

◆ Queue()

virtual void zao::endpoint::serial::TunnelInterface::Queue ( TimestampInterface::Rep  timestamp,
const void *  bytes,
std::size_t  length 
)
pure virtual

送信データをキューする。

Parameters
timestampタイムスタンプ値
bytes送信するバイト列の先頭ポインタ
length送信するバイト列の長さ(バイト数)
Note
本関数から戻った後は bytes の先を解放/書き換えして良い。

◆ RegisterCallback() [1/4]

virtual void zao::endpoint::EventSourceInterface< TunnelCallbackInterface >::RegisterCallback ( const std::shared_ptr< TunnelCallbackInterface > &  listener)
pure virtualinherited

コールバックの送信先をshared_ptrで登録する

Note
参照の保持方式としてshared_ptr/weak_ptr/unique_ptrのいずれも 利用できるが、同時に登録できるのは合計1つの参照のみである。
有効なインスタンスを保持していない参照を渡すと、 送信先を削除する。
Parameters
listener送信先への参照

◆ RegisterCallback() [2/4]

void zao::endpoint::EventSourceInterface< TunnelCallbackInterface >::RegisterCallback ( const std::shared_ptr< TunnelCallbackInterface > &  listener,
bool  use_weak_ptr 
)
inlineinherited

コールバックの送信先をshared_ptrまたはweak_ptrで登録する

Note
参照の保持方式としてshared_ptr/weak_ptr/unique_ptrのいずれも 利用できるが、同時に登録できるのは合計1つの参照のみである。
有効なインスタンスを保持していない参照を渡すと、 送信先を削除する。
Parameters
listener送信先への参照
use_weak_ptrweak_ptrとして保持する場合にtrueを指定
Deprecated:
この関数は将来廃止予定です。 RegisterCallback(const std::shared_ptr<T>&) または RegisterCallback(const std::weak_ptr<T>&, StoreAsWeakPtrType) を使用してください。

◆ RegisterCallback() [3/4]

virtual void zao::endpoint::EventSourceInterface< TunnelCallbackInterface >::RegisterCallback ( const std::weak_ptr< TunnelCallbackInterface > &  listener_weak,
StoreAsWeakPtrType   
)
pure virtualinherited

コールバックの送信先をweak_ptrで登録する

Note
参照の保持方式としてshared_ptr/weak_ptr/unique_ptrのいずれも 利用できるが、同時に登録できるのは合計1つの参照のみである。
有効なインスタンスを保持していない参照を渡すと、 送信先を削除する。
Parameters
listener_weak送信先への参照(所有権を持たない)

◆ RegisterCallback() [4/4]

virtual void zao::endpoint::EventSourceInterface< TunnelCallbackInterface >::RegisterCallback ( std::unique_ptr< TunnelCallbackInterface > &&  listener)
pure virtualinherited

コールバックの送信先をunique_ptrで登録する

Note
参照の保持方式としてshared_ptr/weak_ptr/unique_ptrのいずれも 利用できるが、同時に登録できるのは合計1つの参照のみである。
有効なインスタンスを保持していない参照を渡すと、 送信先を削除する。
Parameters
listener送信先への参照

◆ ResetQueue()

virtual void zao::endpoint::serial::TunnelInterface::ResetQueue ( )
pure virtual

キューされているデータを削除する。

Note
パケタイズ有効時は、パケットの先頭へリセットされる。

◆ SetAvailable()

virtual void zao::endpoint::serial::TunnelInterface::SetAvailable ( bool  new_value)
pure virtualnoexcept

アクティブ状態にできるか否かを設定する。

Parameters
new_valueアクティブ状態にできる場合true
Note
本関数をfalseを指定して呼び出すと、アクティブ状態の場合は 必ず非アクティブ状態へ遷移する。ただしこの遷移は非同期で行われ、 本関数から戻った時点で完了しているとは限らない。
本関数をtrueを指定して呼び出しても、必ずしもアクティブ状態に 遷移するとは限らない。対向側がアクティブ状態になれない場合は 非アクティブ状態を継続する。 the active state will always transition to the active state.

◆ SetMaxPacketLength()

virtual void zao::endpoint::serial::TunnelInterface::SetMaxPacketLength ( std::size_t  length)
pure virtual

最大パケット長を設定する。

Parameters
length最大パケット長(バイト数単位)
Note
パケタイズを用いない場合、設定値は無視される。

◆ SetTimestamp()

virtual void zao::endpoint::StreamInterface::SetTimestamp ( const std::shared_ptr< TimestampInterface > &  timestamp)
pure virtualinherited

このストリームで用いるタイムスタンプを設定する。

Parameters
timestampタイムスタンプ管理オブジェクト

The documentation for this class was generated from the following file: