TNB Library
|
SocketUPDクラス [詳解]
#include <TnbSocketUdp.h>
公開メンバ関数 | |
CSocketUdp (void) | |
コンストラクタ [詳解] | |
void | DisableReportViewer (void) |
[設定] レポートビュワー停止. [詳解] | |
const CSocketAddress & | GetAddressee (void) const |
[取得] 送信先アドレス取得. [詳解] | |
const CSocketAddress & | GetBaseAddress (void) const |
[取得] ベースアドレス取得. [詳解] | |
int | GetIdleInterval (void) const |
[取得] アイドルイベント間隔取得 [詳解] | |
virtual DWORD | GetInterfaceId (void) const |
[取得] インターフェースID取得 [詳解] | |
WORD | GetMaxDatagram (void) |
[取得] UDP送信最大サイズ取得. [詳解] | |
size_t | GetReceivedBufferSize (void) const |
[取得] 受信バッファサイズ取得. [詳解] | |
CThreadStatus & | GetReceiveThreadStatus (void) |
[参照] 受信スレッド状態参照. [詳解] | |
virtual DWORD | GetReportID (void) const |
[取得] コミュニケーションID. [詳解] | |
virtual CStr | GetReportName (void) const |
[取得] コミュニケーション名. [詳解] | |
SOCKET | GetSocket (void) const |
[取得] ソケット取得 [詳解] | |
virtual bool | IsAlive (void) const |
[確認] Aliveチェック. [詳解] | |
virtual bool | IsConnect (void) const |
[確認] 接続チェック. [詳解] | |
virtual bool | Lock (DWORD dwTime=INFINITE) const |
[排他] ロック [詳解] | |
virtual void | Purge (void) |
[設定] パージ. [詳解] | |
CThreadStatus & | ReferThreadStatus (void) |
[参照] 受信スレッド状態参照. [詳解] | |
virtual bool | Send (size_t dataSize, LPCVOID lpcvData) |
[実行] 送信 [詳解] | |
bool | SetAddressee (const CSocketAddress &address) |
[設定] 送信先アドレス指定 [詳解] | |
void | SetBaseAddress (const CSocketAddress &address) |
[設定] ベースアドレス設定. [詳解] | |
void | SetBroadcastPort (WORD portNo, DWORD address=INADDR_BROADCAST) |
[設定] ブロードバンド送信指定 [詳解] | |
virtual void | SetIdleEventMode (int iInterval=0) |
[設定] アイドルイベント設定 [詳解] | |
virtual void | SetListener (IReport::IListener *piCommListener=NULL) |
[登録] 共通 Listner 登録. [詳解] | |
bool | SetReceivedBufferSize (size_t size) |
[設定] 受信バッファサイズ設定. [詳解] | |
virtual void | SetSocketListener (IListener *piSocketListener) |
[設定] リスナー登録 [詳解] | |
virtual bool | Start (void) |
[実行] 開始 [詳解] | |
virtual void | Stop (void) |
[実行] 切断 [詳解] | |
virtual void | Unlock (void) const |
[排他] アンロック [詳解] | |
bool | WaitConnect (DWORD dwTime) const |
[確認] 接続待ち [詳解] | |
virtual | ~CSocketUdp (void) |
デストラクタ [詳解] | |
静的公開メンバ関数 | |
static CDwordVector | GetMyAddress (void) |
[取得] 自IPアドレス取得. [詳解] | |
static void | StartUp (void) |
[設定] SOCKET初期化. [詳解] | |
static bool | WakeupOnLan (const BYTE *pbMacAddr) |
[送信] Wake up on LAN [詳解] | |
限定公開メンバ関数 | |
bool | m_OnEvent (const CReportEvent &ev) |
[内部] コールバック通知実行 [詳解] | |
void | m_OnSend (size_t sizeData, LPCVOID lpcvData) |
[内部] 送信情報通知 [詳解] | |
void | ToViewer (LPCTSTR lpszText) |
[出力] 文字列出力. [詳解] | |
void | ToViewer (size_t sizeData, LPCVOID lpcvData) |
[出力] ダンプ出力. [詳解] | |
SocketUPDクラス
UDPソケットを用意します。 受信は CAbstractSocket::IListener か IReport::IListener の実装クラスを作成し SetSocketListener() , SetListener() を使い登録します。 両方登録している場合、受信時、先に CAbstractSocket::IListener に通知されます。
関連ウィンドウ
を指定する 必要があります。 CThread::SetOwnerHwnd() を参照してください。TnbSocketUdp.h の 62 行目に定義があります。
CSocketUdp | ( | void | ) |
コンストラクタ
TnbSocketUdp.h の 68 行目に定義があります。
|
virtual |
デストラクタ
TnbSocketUdp.h の 75 行目に定義があります。
|
inherited |
[設定] レポートビュワー停止.
本メソッドを使用すると、通信ログの出力を行いません。 デフォルトは、出力を行います(ただしビルドの設定にもよります)。
TnbAbstractReport.h の 150 行目に定義があります。
const CSocketAddress & GetAddressee | ( | void | ) | const |
[取得] 送信先アドレス取得.
SetAddressee() か SetBroadcastPort() で設定したアドレスが得られます。
TnbSocketUdp.h の 225 行目に定義があります。
const CSocketAddress & GetBaseAddress | ( | void | ) | const |
|
inherited |
|
virtualinherited |
WORD GetMaxDatagram | ( | void | ) |
[取得] UDP送信最大サイズ取得.
TnbSocketUdp.h の 117 行目に定義があります。
|
staticinherited |
size_t GetReceivedBufferSize | ( | void | ) | const |
CThreadStatus & GetReceiveThreadStatus | ( | void | ) |
[参照] 受信スレッド状態参照.
スレッド状態の参照. |
TnbSocketUdp.h の 301 行目に定義があります。
|
virtual |
[取得] コミュニケーションID.
TNBVIW_KIND_??? + PORT を返します。
IReportを実装しています。
TnbSocketUdp.h の 96 行目に定義があります。
|
virtual |
SOCKET GetSocket | ( | void | ) | const |
|
virtual |
[確認] Aliveチェック.
Start() メソッドが実行されている状態か、チェックします。
true | 開始している。 |
false | 停止している。 |
IReportを実装しています。
TnbSocketUdp.h の 204 行目に定義があります。
|
virtual |
[確認] 接続チェック.
true | 接続中。 |
false | 切断。 |
IReportを実装しています。
TnbSocketUdp.h の 215 行目に定義があります。
|
virtualinherited |
[排他] ロック
dwTime | 値は無視されます。 |
ISynchronizedを実装しています。
CSyncSectionExで再実装されています。
|
protectedinherited |
|
protectedinherited |
[内部] 送信情報通知
sizeData | 送信するデータ長。 |
lpcvData | 送信するデータ。 |
TnbAbstractReport.h の 163 行目に定義があります。
|
virtualinherited |
[設定] パージ.
通信のゴミを浄化
IReportを実装しています。
CBufferingReporter, CCommunicationReporterで再実装されています。
TnbAbstractReport.h の 117 行目に定義があります。
CThreadStatus & ReferThreadStatus | ( | void | ) |
|
virtual |
[実行] 送信
dataSize | データサイズ |
lpcvData | データ |
true | 成功 |
false | 失敗 |
IReportを実装しています。
CSocketUdpExで再実装されています。
TnbSocketUdp.h の 266 行目に定義があります。
bool SetAddressee | ( | const CSocketAddress & | address | ) |
[設定] 送信先アドレス指定
address | 相手のIPアドレス&ポートNo |
true | 成功。 |
false | 失敗(名前が解決できない) |
TnbSocketUdp.h の 237 行目に定義があります。
void SetBaseAddress | ( | const CSocketAddress & | address | ) |
[設定] ベースアドレス設定.
受信に使用する IP アドレス(INADDR_ANY でも可)、ポートNo を指定します。 ポートNo は UDP ヘッダの送信元ポートNoにも使われます。
address | アドレス |
TnbSocketUdp.h の 135 行目に定義があります。
void SetBroadcastPort | ( | WORD | portNo, |
DWORD | address = INADDR_BROADCAST |
||
) |
[設定] ブロードバンド送信指定
portNo | 送信先ポートNo |
address | アドレス。省略すると INADDR_BROADCAST |
TnbSocketUdp.h の 250 行目に定義があります。
|
virtualinherited |
[設定] アイドルイベント設定
iInterval | Idleイベントをあげる間隔を指定します。0なら、Idleイベントなし。 |
IReportを実装しています。
CBufferingReporter, CCommunicationReporterで再実装されています。
TnbAbstractReport.h の 90 行目に定義があります。
|
virtualinherited |
[登録] 共通 Listner 登録.
piCommListener | リスナー。省略すると解除になります。 |
IReportを実装しています。
CBufferingReporterで再実装されています。
TnbAbstractReport.h の 69 行目に定義があります。
bool SetReceivedBufferSize | ( | size_t | size | ) |
[設定] 受信バッファサイズ設定.
size | 受信バッファサイズ |
true | 成功。 |
false | 失敗。 Start していない、など。 |
TnbSocketUdp.h の 325 行目に定義があります。
|
virtualinherited |
[設定] リスナー登録
piSocketListener | リスナー |
TnbSocket.h の 466 行目に定義があります。
|
virtual |
[実行] 開始
true | 成功。送受信可能。 |
false | 失敗。 |
IReportを実装しています。
TnbSocketUdp.h の 157 行目に定義があります。
|
staticinherited |
[設定] SOCKET初期化.
WSAStartup() コールします。すでにコールしている場合は、何もしません。
TnbSocket.h の 478 行目に定義があります。
|
virtual |
|
protectedinherited |
|
protectedinherited |
|
virtualinherited |
|
inherited |
|
static |
[送信] Wake up on LAN
pbMacAddr | 6BYTEのMACアドレス。 |
true | 成功。 |
false | 失敗。 |
TnbSocketUdp.h の 345 行目に定義があります。