第 7 章 おわりに 65
C.7 DeviceManager
ヘッダーファイルDeviceManager.h
概要
デバイスマネージャのメインクラスである。ビデオネットワークに所属しているデバイ スコントローラとバーチャルビデオノードに関する情報を管理する。
コンストラクタ
DeviceManager::DeviceManager(ResourceManager *rm);
説明
リソースマネージャのメインクラスであるResourceManagerのインスタンスを引数とし て呼び出す。このDeviceManagerはrmに所属するDeviceManagerになる。
メンバ関数
DeviceManager::registerDC デバイスコントローラの登録 インターフェース
bool DeviceManager::registerDC(const DeviceControllerInfo &dci);
説明
デバイスコントローラを登録する。成功した場合にtrueを返し、失敗した場合には falseを返す。
DeviceManager::deleteDC デバイスコントローラの登録の抹消 インターフェース
bool DeviceManager::deleteDC(const DeviceControllerInfo &dci);
説明
デバイスコントローラの登録を抹消する。このデバイスコントローラに所属するバー チャルビデオノードの登録も同時に抹消されるため、個々のバーチャルビデオノード の登録を抹消する必要はない。成功した場合にtrueを返し、失敗した場合にはfalse を返す。
DeviceManager::registerVVN バーチャルビデオノードの登録 インターフェース
bool DeviceManager::registerVVN(VirtualVideoNodeInfo *vvni);
説明vvniをバーチャルビデオノードとして登録する。このバーチャルビデオノード が所属するデバイスコントローラは予め登録されていなければならない。成功した 場合にtrueを返し、失敗した場合にはfalseを返す。
DeviceManager::deleteVVN バーチャルビデオノードの登録の抹消 インターフェース
bool DeviceManager::deleteVVN(VirtualVideoNode *vvn);
説明
vvniの登録を抹消する。成功した場合にtrueを返し、失敗した場合にはfalseを返す。
DeviceManager::registerGW ビデオゲートウェイの登録 インターフェース
bool DeviceManager::registerGW(GatewayInfo *gwi);
説明
ゲートウェイを登録する。ゲートウェイとなるバーチャルビデオノードは予めデバ イスマネージャに登録されていなければならない。成功した場合にtrueを返し、失 敗した場合にはfalseを返す。
DeviceManager::deleteGW ゲートウェイの登録の抹消 インターフェース
void DeviceManager::deleteGW(GatewayInfo *gwi);
説明
ゲートウェイの登録を抹消する。成功した場合にtrueを返し、失敗した場合には falseを返す。
DeviceManager::searchDC デバイスコントローラの検索 インターフェース
DeviceControllerInfo DeviceManager::searchDC(int id) const;
DeviceControllerInfo DeviceManager::searchDC(
uint32_t addr, int16_t port) const;
説明
デバイスコントローラIDがidであるデバイスコントローラを検索しその結果を DeviceControllerInfoとして返す。二つ目のメンバ関数を利用した場合には、IPア ドレスがaddrでポート番号がportであるデバイスコントローラの検索を行う。デ バイスコントローラが見付からない場合にはIDが-1であるDeviceControllerInfoを 返す。
DeviceManager::searchVVN バーチャルビデオノードの検索 インターフェース
VirtualVideoNodeInfo DeviceManager::searchVVN(
const NodeAddress &addr) const;
説明
ノードアドレスがaddrであるバーチャルビデオノードを検索し、その結果を Virtu-alVideoNodeInfoとして返す。指定したバーチャルビデオノードが存在しない場合に はNodeAddressのデフォルト値のままであるaddrを持ったVirtualVideoNodeInfo を返す。
DeviceManager::searchVVNs バーチャルビデオノードの検索 インターフェース
std::list<VirtualVideoNodeInfo> DeviceManager::searchVVNs(
const DeviceControllerInfo &dci) const;
説明
dciで指定されているデバイスコントローラに接続されているバーチャルビデオノー ドについての情報をVirtualVideoNodeInfoのリストとして返す。
DeviceManager::searchGW ゲートウェイの検索 インターフェース
std::list<GatewayInfo> DeviceManager::searchGW(
const NetAddress &addr, direction direct) const;
説明
addrで指定されたビデオネットワークにdirectの方向で接続しているビデオゲート ウェイに関する情報をGatewayInfoのリストとして返す。
DeviceManager::attachReceiver 通知オブジェクトの追加 インターフェース
void DeviceManager::attachReceiver(NotificationReceiver *receiver);
説明
receiverを内部状態変化時の呼び出しオブジェクトとして登録する。
DeviceManager::detachReceiver 通知オブジェクトの削除 インターフェース
void DeviceManager::detachReceiver(NotificationReceiver *receiver);
説明
receiverを内部状態変化時の呼び出しオブジェクトの登録から削除する。
DeviceManager の外部への報告
ATTACHEDDC (ID)
新たにIDが(ID)であるデバイスコントローラが登録された DETACHEDDC (ID)
IDが(ID)であるデバイスコントローラの登録が抹消された ATTACHEDVVN (NODEADDRESS)
ノードアドレスが(NODEADDRESS)であるバーチャルビデオノードが登録された DETACHEDVVN (NODEADDRESS)
ノードアドレスが(NODEADDRESS)であるバーチャルビデオノードの登録が抹消された ATTACHEDGW (NODEADDRESS)
ノードアドレスが(NODEADDRESS)であるビデオゲートウェイが登録された DETACHEDGW (NODEADDRESS)
ノードアドレスが(NODEADDRESS)であるビデオゲートウェイの登録が抹消された