TNB Library
クラス | 公開メンバ関数 | 全メンバ一覧
CReportWatchAdapter クラス

通信報告監視アダプタ [詳解]

#include <TnbReportWatchAdapter.h>

+ CReportWatchAdapter の継承関係図

クラス

struct  ILogger
 通信報告監視アダプタのロガーインターフェース [詳解]
 

公開メンバ関数

 CReportWatchAdapter (IReport *pRep)
 コンストラクタ. [詳解]
 
virtual DWORD GetInterfaceId (void) const
 [取得] インターフェースID取得 [詳解]
 
virtual DWORD GetReportID (void) const
 [取得] コミュニケーションID. [詳解]
 
virtual CStr GetReportName (void) const
 [取得] コミュニケーション名. [詳解]
 
virtual bool IsAlive (void) const
 [確認] Aliveチェック. [詳解]
 
virtual bool IsConnect (void) const
 [確認] 接続チェック [詳解]
 
virtual void Purge (void)
 [設定] パージ. [詳解]
 
virtual bool Send (size_t dataSize, LPCVOID lpcData)
 [送信] データ送信 [詳解]
 
virtual void SetIdleEventMode (int iInterval=0)
 [設定] アイドルイベント設定 [詳解]
 
virtual void SetListener (IReport::IListener *piCommListener=NULL)
 [登録] 共通Listner登録. [詳解]
 
void SetLogger (ILogger *pLogger)
 [登録] ロガー登録. [詳解]
 
bool SetReporter (IReport *pRep)
 [登録] レポーター登録. [詳解]
 
virtual bool Start (void)
 [操作] 開始. [詳解]
 
virtual void Stop (void)
 [操作] 停止. [詳解]
 

詳解

通信報告監視アダプタ

レポーター( IReport を実装したクラス)を本クラスに登録( SetReporter() )して使用します。
本クラスは登録したレポーターを使って通信を行います。その際、通信内容をロガー( ILogger を実装したクラス)
に通知することが出来ます。
使用例
// .h
class CFooDlg : public CDialog, CReportWatchAdapter::ILogger
{
protected:
virtual void OnReportWatchEventLog(EReportEvent ev);
virtual void OnReportWatchDataLog(EKind kind, size_t dataSize, const BYTE* pData);
private:
CCommunicationReporterT<CRs232c> m_rs232c;
CPacketCommander m_commander;
};
// .cpp
CFooDlg::CFooDlg(void) : CDialog(CFooDlg::IDD, pParent)
, m_rwp(&m_rs232c) // アダプタが使う通信クラスを指定
{
}
void CFooDlg::OnReportWatchEventLog(EReportEvent ev)
{
//ログ表示
}
void CFooDlg::OnReportWatchDataLog(EKind kind, size_t dataSize, const BYTE* pData)
{
//ログ表示
}
void CFooDlg::OnInitDialog()
{
;
m_rwp.SetLogger(this);
m_commander.Open(&m_rwp, true); //アダプタのほうを指定する。通信は m_rs232c が担う。
;
}
CReportWatchAdapter(IReport *pRep)
コンストラクタ.
EReportEvent
通信受信イベント種.
Definition: TnbReport.h:28
必要ファイル
TnbReportWatchAdapter.h
日付
11/07/06 新規作成

TnbReportWatchAdapter.h73 行目に定義があります。

構築子と解体子

◆ CReportWatchAdapter()

コンストラクタ.

引数
pRepレポータのインスタンス

TnbReportWatchAdapter.h128 行目に定義があります。

関数詳解

◆ GetInterfaceId()

virtual DWORD GetInterfaceId ( void  ) const
virtual

[取得] インターフェースID取得

戻り値
ID

IReportを実装しています。

TnbReportWatchAdapter.h196 行目に定義があります。

◆ GetReportID()

virtual DWORD GetReportID ( void  ) const
virtual

[取得] コミュニケーションID.

TNBVIW_KIND_??? + PORT を返します。

覚え書き
開発用のメソッドです。
戻り値
ID

IReportを実装しています。

TnbReportWatchAdapter.h177 行目に定義があります。

◆ GetReportName()

virtual CStr GetReportName ( void  ) const
virtual

[取得] コミュニケーション名.

覚え書き
開発用のメソッドです。
戻り値
名前

IReportを実装しています。

TnbReportWatchAdapter.h166 行目に定義があります。

◆ IsAlive()

virtual bool IsAlive ( void  ) const
virtual

[確認] Aliveチェック.

各サブクラスの開始メソッドが実行されている状態か、チェックします。

戻り値
true開始している。
false停止している。

IReportを実装しています。

TnbReportWatchAdapter.h240 行目に定義があります。

◆ IsConnect()

virtual bool IsConnect ( void  ) const
virtual

[確認] 接続チェック

戻り値
true接続中。
false切断。

IReportを実装しています。

TnbReportWatchAdapter.h250 行目に定義があります。

◆ Purge()

virtual void Purge ( void  )
virtual

[設定] パージ.

通信のゴミを浄化

IReportを実装しています。

TnbReportWatchAdapter.h277 行目に定義があります。

◆ Send()

virtual bool Send ( size_t  dataSize,
LPCVOID  lpcData 
)
virtual

[送信] データ送信

引数
dataSize送信するデータ長。
lpcData送信するデータ。
戻り値
true成功
false失敗

IReportを実装しています。

TnbReportWatchAdapter.h262 行目に定義があります。

◆ SetIdleEventMode()

virtual void SetIdleEventMode ( int  iInterval = 0)
virtual

[設定] アイドルイベント設定

覚え書き
受信がない時、指定の間隔でコールバックを発生させることができます。 開始後、あるいは受信処理後、指定ms秒後にコールバックが始まります。 Open中に有無の切り替えは可能です。
引数
iIntervalIdleイベントをあげる間隔を指定します。0なら、Idleイベントなし。

IReportを実装しています。

TnbReportWatchAdapter.h208 行目に定義があります。

◆ SetListener()

virtual void SetListener ( IReport::IListener piCommListener = NULL)
virtual

[登録] 共通Listner登録.

覚え書き
登録できる IReport::IListener は一つだけです。
引数
piCommListenerリスナー。省略すると解除になります。

IReportを実装しています。

TnbReportWatchAdapter.h187 行目に定義があります。

◆ SetLogger()

void SetLogger ( ILogger pLogger)

[登録] ロガー登録.

引数
pLoggerロガー

TnbReportWatchAdapter.h156 行目に定義があります。

◆ SetReporter()

bool SetReporter ( IReport pRep)

[登録] レポーター登録.

引数
pRepレポータ
戻り値
true成功.
false失敗。 Start() 後は失敗します。 pRep が NULL の時も失敗します。

TnbReportWatchAdapter.h142 行目に定義があります。

◆ Start()

virtual bool Start ( void  )
virtual

[操作] 開始.

覚え書き
設定メソッドで設定を行ってから本メソッドを使用し、開始します。
戻り値
true成功。Alive状態になりました。
false失敗。Alive状態にはなれませんでした。

IReportを実装しています。

TnbReportWatchAdapter.h219 行目に定義があります。

◆ Stop()

virtual void Stop ( void  )
virtual

[操作] 停止.

Alive状態を終了します。

IReportを実装しています。

TnbReportWatchAdapter.h229 行目に定義があります。