CTR-Pia  5.4.3
Game Communication Engine
 全て クラス ネームスペース 関数 変数 型定義 列挙型 列挙型の値 ページ
クラス nn::pia::clone::SequentialSharingClone

無制限に送信のできる双方向の送受信を行う CloneBase 派生クラスです。 [詳細]

+ nn::pia::clone::SequentialSharingCloneに対する継承グラフ

Public 型

typedef uint32_t Id
 クローンを識別するための ID の型です。
 

Public メソッド

 SequentialSharingClone ()
 デフォルトコンストラクタです。
 
virtual ~SequentialSharingClone ()
 デストラクタです。
 
Id GetId () const
 ID を取得します。
 
const CloneProtocolGetProtocol () const
 このオブジェクトが登録されている CloneProtocol を取得します。
 
bool IsActive () const
 このオブジェクトが動作中かどうかを取得します。
 
bool IsConnected (StationId stationId) const
 この SharingClone とデータをやり取りする他のステーションの SharingClone が存在するかどうかを判定します。
 
bool IsConnectedWithAll () const
 この SharingClone とデータをやり取りする SharingClone が全てのステーションに存在するかどうかを判定します。
 
bool IsRegisteredWithProtocol () const
 CloneProtocol に登録されているかどうかを判定します。
 
Result RegisterElement (CloneElementBase *pElement, CloneElementBase::Id elementId)
 クローンエレメントを登録します。
 
CloneElementBaseSearchElement (CloneElementBase::Id elementId)
 指定された ID のクローンエレメントを検索します。
 
const CloneElementBaseSearchElement (CloneElementBase::Id elementId) const
 指定された ID のクローンエレメントを検索します。
 
virtual void Trace (uint64_t flag) const
 デバッグに有用な情報をプリントします。
 
Result UnregisterElement (CloneElementBase *pElement)
 クローンエレメントの登録を解除します。
 
Result UnregisterElement (CloneElementBase::Id elementId)
 クローンエレメントの登録を解除します。
 
プロファイリング
Result SetProfiler (CloneProfilerBase *pSendProfiler, CloneProfilerBase *pReceiveProfiler)
 送受信のプロファイリング管理オブジェクトを設定します。
 
const CloneProfilerBaseGetSendProfiler () const
 設定されている送信プロファイリング管理オブジェクトを取得します。
 
const CloneProfilerBaseGetReceiveProfiler () const
 設定されている受信プロファイリング管理オブジェクトを取得します。
 
void ResetProfiler ()
 送受信のプロファイリングされた結果をリセットします。
 
uint32_t GetProfiledLatestSendCount (StationIndex stationIndex) const
 直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信した クローンメッセージの個数を取得します。
 
uint32_t GetProfiledLatestSendSize (StationIndex stationIndex) const
 直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したクローンメッセージのサイズ(バイト)を取得します。
 
uint32_t GetProfiledLatestSendNoCompressedSize (StationIndex stationIndex) const
 直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したクローンメッセージの圧縮前のサイズ(バイト)を取得します。
 
uint32_t GetProfiledLatestSendUnicastCount (StationIndex stationIndex) const
 直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間にユニキャストで送信したクローンメッセージの個数を取得します。
 
uint32_t GetProfiledLatestSendUnicastSize (StationIndex stationIndex) const
 直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間にユニキャストで送信したクローンメッセージのサイズ(バイト)を取得します。
 
uint32_t GetProfiledLatestSendSystemCount (StationIndex stationIndex) const
 直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したシステム用クローンメッセージの個数を取得します。
 
uint32_t GetProfiledLatestSendSystemSize (StationIndex stationIndex) const
 直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したシステム用クローンメッセージのサイズ(バイト)を取得します。
 
uint32_t GetProfiledTotalSendCount (StationIndex stationIndex) const
 ResetProfiler 以降に送信したクローンメッセージの個数を取得します。
 
uint32_t GetProfiledTotalSendSize (StationIndex stationIndex) const
 ResetProfiler 以降に送信したクローンメッセージのサイズ(バイト)を取得します。
 
uint32_t GetProfiledTotalSendNoCompressedSize (StationIndex stationIndex) const
 ResetProfiler 以降に送信したクローンメッセージの圧縮前のサイズ(バイト)を取得します。
 
uint32_t GetProfiledTotalSendUnicastCount (StationIndex stationIndex) const
 ResetProfiler 以降にユニキャストで送信したクローンメッセージの個数を取得します。
 
uint32_t GetProfiledTotalSendUnicastSize (StationIndex stationIndex) const
 ResetProfiler 以降にユニキャストで送信したクローンメッセージのサイズ(バイト)を取得します。
 
uint32_t GetProfiledTotalSendSystemCount (StationIndex stationIndex) const
 ResetProfiler 以降に送信したシステム用クローンメッセージの個数を取得します。
 
uint32_t GetProfiledTotalSendSystemSize (StationIndex stationIndex) const
 ResetProfiler 以降に送信したシステム用クローンメッセージのサイズ(バイト)を取得します。
 
uint32_t GetProfiledLatestReceiveCount (StationIndex stationIndex) const
 直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に受信したクローンメッセージの個数を取得します。
 
uint32_t GetProfiledLatestReceiveSize (StationIndex stationIndex) const
 直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に受信したクローンメッセージのサイズ(バイト)を取得します。
 
uint32_t GetProfiledTotalReceiveCount (StationIndex stationIndex) const
 ResetProfiler 以降に受信したクローンメッセージの個数を取得します。
 
uint32_t GetProfiledTotalReceiveSize (StationIndex stationIndex) const
 ResetProfiler 以降に受信したクローンメッセージのサイズ(バイト)を取得します。
 

説明

無制限に送信のできる双方向の送受信を行う CloneBase 派生クラスです。

注意
SequentialSharingClone には EventCloneElement, reckoning::ReckoningCloneElement を登録することはできません。

関数

Id nn::pia::clone::CloneBase::GetId ( ) const
inlineinherited

ID を取得します。

戻り値
CloneProtocol に登録する際に指定したIDです。 CloneProtocol に登録されていない場合は 0 を返します。
uint32_t nn::pia::clone::CloneBase::GetProfiledLatestReceiveCount ( StationIndex  stationIndex) const
inherited

直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に受信したクローンメッセージの個数を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に受信したクローンメッセージの個数です。 受信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledLatestReceiveSize ( StationIndex  stationIndex) const
inherited

直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に受信したクローンメッセージのサイズ(バイト)を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に受信したクローンメッセージのサイズ(バイト)です。 受信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledLatestSendCount ( StationIndex  stationIndex) const
inherited

直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信した クローンメッセージの個数を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したクローンメッセージの個数です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledLatestSendNoCompressedSize ( StationIndex  stationIndex) const
inherited

直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したクローンメッセージの圧縮前のサイズ(バイト)を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したクローンメッセージの圧縮前のサイズ(バイト)です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledLatestSendSize ( StationIndex  stationIndex) const
inherited

直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したクローンメッセージのサイズ(バイト)を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したクローンメッセージのサイズ(バイト)です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledLatestSendSystemCount ( StationIndex  stationIndex) const
inherited

直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したシステム用クローンメッセージの個数を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したシステム用クローンメッセージの個数です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledLatestSendSystemSize ( StationIndex  stationIndex) const
inherited

直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したシステム用クローンメッセージのサイズ(バイト)を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間に送信したシステム用クローンメッセージのサイズ(バイト)です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledLatestSendUnicastCount ( StationIndex  stationIndex) const
inherited

直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間にユニキャストで送信したクローンメッセージの個数を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間にユニキャストで送信したクローンメッセージの個数です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledLatestSendUnicastSize ( StationIndex  stationIndex) const
inherited

直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間にユニキャストで送信したクローンメッセージのサイズ(バイト)を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
直近の CloneProfiler::LATEST_BUFFER_SIZE 回の common::Scheduler::Dispatch の間にユニキャストで送信したクローンメッセージのサイズ(バイト)です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledTotalReceiveCount ( StationIndex  stationIndex) const
inherited

ResetProfiler 以降に受信したクローンメッセージの個数を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
ResetProfiler() 以降に受信したクローンメッセージの個数です。 受信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler, ResetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledTotalReceiveSize ( StationIndex  stationIndex) const
inherited

ResetProfiler 以降に受信したクローンメッセージのサイズ(バイト)を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
ResetProfiler() 以降に受信したクローンメッセージのサイズ(バイト)です。 受信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler, ResetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledTotalSendCount ( StationIndex  stationIndex) const
inherited

ResetProfiler 以降に送信したクローンメッセージの個数を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
ResetProfiler() 以降に送信したクローンメッセージの個数です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler, ResetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledTotalSendNoCompressedSize ( StationIndex  stationIndex) const
inherited

ResetProfiler 以降に送信したクローンメッセージの圧縮前のサイズ(バイト)を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
ResetProfiler() 以降に送信したクローンメッセージの圧縮前のサイズ(バイト)です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler, ResetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledTotalSendSize ( StationIndex  stationIndex) const
inherited

ResetProfiler 以降に送信したクローンメッセージのサイズ(バイト)を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
ResetProfiler() 以降に送信したクローンメッセージのサイズ(バイト)です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler, ResetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledTotalSendSystemCount ( StationIndex  stationIndex) const
inherited

ResetProfiler 以降に送信したシステム用クローンメッセージの個数を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
ResetProfiler() 以降に送信したシステム用クローンメッセージの個数です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler, ResetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledTotalSendSystemSize ( StationIndex  stationIndex) const
inherited

ResetProfiler 以降に送信したシステム用クローンメッセージのサイズ(バイト)を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
ResetProfiler() 以降に送信したシステム用クローンメッセージのサイズ(バイト)です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler, ResetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledTotalSendUnicastCount ( StationIndex  stationIndex) const
inherited

ResetProfiler 以降にユニキャストで送信したクローンメッセージの個数を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
ResetProfiler() 以降にユニキャストで送信したクローンメッセージの個数です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler, ResetProfiler
uint32_t nn::pia::clone::CloneBase::GetProfiledTotalSendUnicastSize ( StationIndex  stationIndex) const
inherited

ResetProfiler 以降にユニキャストで送信したクローンメッセージのサイズ(バイト)を取得します。

引数
[in]stationIndexプロファイリング対象の StationIndex です。
戻り値
ResetProfiler() 以降にユニキャストで送信したクローンメッセージのサイズ(バイト)です。 送信プロファイリング管理オブジェクトが設定されていない場合は 0xFFFFFFFF を返します。
参照
SetProfiler, ResetProfiler
const CloneProtocol* nn::pia::clone::CloneBase::GetProtocol ( ) const
inlineinherited

このオブジェクトが登録されている CloneProtocol を取得します。

戻り値
このオブジェクトが登録されている CloneProtocol です。
const CloneProfilerBase* nn::pia::clone::CloneBase::GetReceiveProfiler ( ) const
inlineinherited

設定されている受信プロファイリング管理オブジェクトを取得します。

戻り値
設定されている受信プロファイリング管理オブジェクトです。設定されていない場合は NULL を返します。
参照
SetProfiler
const CloneProfilerBase* nn::pia::clone::CloneBase::GetSendProfiler ( ) const
inlineinherited

設定されている送信プロファイリング管理オブジェクトを取得します。

戻り値
設定されている送信プロファイリング管理オブジェクトです。設定されていない場合は NULL を返します。
参照
SetProfiler
bool nn::pia::clone::CloneBase::IsActive ( ) const
inlineinherited

このオブジェクトが動作中かどうかを取得します。

CloneProtocol に登録されていて、実際に値の送受信ができる状態であれば動作中と扱います。 CloneProtocol への登録/登録解除処理中や、 CloneProtocol の開始/終了処理中は動作中ではありません。

戻り値
動作中なら true を返します。
bool nn::pia::clone::SharingClone::IsConnected ( StationId  stationId) const
inherited

この SharingClone とデータをやり取りする他のステーションの SharingClone が存在するかどうかを判定します。

相手の SharingClone が途中で登録解除された場合、アプリケーションや内部によるデータの送受信や、 CloneProtocol の通信終了、ステーションの離脱等が起こるまでは反映されないので注意してください。

引数
[in]stationId相手の StationId です。
戻り値
この SharingClone とデータをやり取りする SharingClone が存在すれば true を返します。
参照
IsConnectedWithAll
bool nn::pia::clone::SharingClone::IsConnectedWithAll ( ) const
inherited

この SharingClone とデータをやり取りする SharingClone が全てのステーションに存在するかどうかを判定します。

CloneProtocol::IsActiveStation() が true となるステーションが判定対象です。

相手の SharingClone が途中で登録解除された場合、アプリケーションや内部によるデータの送受信等が 起こるまでは反映されないので注意してください。

戻り値
この SharingClone とデータをやり取りする SharingClone が全てのステーションに存在すれば true を返します。
参照
IsConnected
bool nn::pia::clone::CloneBase::IsRegisteredWithProtocol ( ) const
inlineinherited

CloneProtocol に登録されているかどうかを判定します。

戻り値
CloneProtocol に登録されていれば true を返します。
Result nn::pia::clone::CloneBase::RegisterElement ( CloneElementBase pElement,
CloneElementBase::Id  elementId 
)
inherited

クローンエレメントを登録します。

このオブジェクトが CloneProtocol に登録されていない状態で呼び出す必要があります。

引数
[in]pElement登録するクローンエレメントです。
[in]elementId登録するクローンエレメントの ID です。
戻り値
成功すれば、IsSuccess() が true を返す Result が返されます。
返るエラーの一覧:

ResultInvalidState このオブジェクトが CloneProtocol に登録されています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultInvalidArgument 引数が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultAlreadyExists 指定された ID には既にクローンエレメントが登録されています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

void nn::pia::clone::CloneBase::ResetProfiler ( )
inherited

送受信のプロファイリングされた結果をリセットします。

参照
SetProfiler
CloneElementBase* nn::pia::clone::CloneBase::SearchElement ( CloneElementBase::Id  elementId)
inlineinherited

指定された ID のクローンエレメントを検索します。

引数
[in]elementId検索するクローンエレメントです。
戻り値
指定された ID のクローンエレメントを返します。存在しなければ NULL を返します。
const CloneElementBase* nn::pia::clone::CloneBase::SearchElement ( CloneElementBase::Id  elementId) const
inlineinherited

指定された ID のクローンエレメントを検索します。

引数
[in]elementId検索するクローンエレメントです。
戻り値
指定された ID のクローンエレメントを返します。存在しなければ NULL を返します。
Result nn::pia::clone::CloneBase::SetProfiler ( CloneProfilerBase pSendProfiler,
CloneProfilerBase pReceiveProfiler 
)
inherited

送受信のプロファイリング管理オブジェクトを設定します。

CloneProfiler を設定すると、登録されているクローンエレメントおよびクローン自身が行った送受信をプロファイリングできます。 ここでの計測は、このクローンが他のクローンと行うすべてのデータのやり取りが計上されるため、 自ステーション内でのクローン間のデータのやり取りも値に含まれます。

複数のクローンエレメントが同時に送信する場合、クローン単位で一つにまとめられるため、 多くの場合、クローンエレメントの送受信回数の合計よりクローンの送受信回数の方が小さくなります。

圧縮を有効にしていた場合、計測されるサイズは圧縮された状態でのサイズです。 そのため、登録しているクローンエレメントで計測された送受信サイズの合計より、数値上は小さい値が計測される場合があります。

引数に NULL を指定すると、既に設定してある CloneProfiler を解除する事ができます。

引数
[in]pSendProfiler送信のプロファイリングを管理する CloneProfiler を指定します。 必要ない場合は NULL を指定する必要があります。
[in]pReceiveProfiler受信のプロファイリングを管理する CloneProfiler を指定します。 必要ない場合は NULL を指定する必要があります。
戻り値
成功すれば、IsSuccess() が true を返す Result が返されます。この関数がエラーを返さないようにアプリケーションを実装する必要があります。
返るエラーの一覧:
ResultInvalidArgument 引数が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
virtual void nn::pia::clone::SequentialSharingClone::Trace ( uint64_t  flag) const
virtual

デバッグに有用な情報をプリントします。

引数
[in]flagトレースフラグの論理和。詳細は TraceFlag 型を参照してください。

nn::pia::clone::SharingCloneを再定義しています。

Result nn::pia::clone::CloneBase::UnregisterElement ( CloneElementBase pElement)
inherited

クローンエレメントの登録を解除します。

このオブジェクトが CloneProtocol に登録されていない状態で呼び出す必要があります。

引数
[in]pElement登録解除するクローンエレメントです。
戻り値
成功すれば、IsSuccess() が true を返す Result が返されます。この関数がエラーを返さないようにアプリケーションを実装する必要があります。
返るエラーの一覧:

ResultInvalidState このオブジェクトが CloneProtocol に登録されています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultInvalidArgument 引数が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

Result nn::pia::clone::CloneBase::UnregisterElement ( CloneElementBase::Id  elementId)
inherited

クローンエレメントの登録を解除します。

このオブジェクトが CloneProtocol に登録されていない状態で呼び出す必要があります。

引数
[in]elementId登録解除するクローンエレメントの ID です。
戻り値
成功すれば、IsSuccess() が true を返す Result が返されます。この関数がエラーを返さないようにアプリケーションを実装する必要があります。
返るエラーの一覧:

ResultInvalidState このオブジェクトが CloneProtocol に登録されています。 プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultNotSet 指定された ID にはクローンエレメントが登録されていません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。