|
mqsdx
310.0.0
MQPluginSDK Extention Library / mqsdkをC++またはCLI(.Net)拡張するサポートライブラリ
|
MQBasePluginを継承したクラスに、基本的な拡張を行うテンプレートラッパークラス [詳細]
#include <MQ0x.hpp>

Public メソッド | |
| MQBasePlugin * | BasePlugin () |
| 継承された時に使う明示的キャスト | |
| virtual const char * | EnumString () |
| ボタンやメニューに表示される文字列を返す。 | |
| virtual void | GetPlugInID (DWORD *Product, DWORD *ID) |
| プラグインIDを返す。 | |
| virtual const char * | GetPlugInName () |
| プラグイン名を返す。 | |
| const char * | GetProductName () |
| 製造者名を返す(独自に追加) | |
| PluginBase (const char *productName, const char *pluginFullName, const char *pluginString) | |
| PluginBase (const char *productName, const char *pluginFullName, const char *pluginString, const DWORD idProduct, const DWORD idPlugin) | |
| DWORD | PluginID () |
| プラグインIDを取得する | |
| DWORD | ProductID () |
| プロダクトIDを取得する | |
| SettingProxy::Handle | Setting () |
| SettingProxy(MQSettingの代替)をオープンするハンドルを取得 | |
Protected 変数 | |
| const DWORD | m_idPlugin |
| const DWORD | m_idProduct |
| const std::string | m_pluginFullName |
| const std::string | m_pluginString |
| const std::string | m_productName |
MQBasePluginを継承したクラスに、基本的な拡張を行うテンプレートラッパークラス
| T_MQPLUGIN | MQBasePluginを継承する型 |
このクラスはコンストラクタで製造者名、プラグイン名、表示名を指定する事で以下の実装を自動化します。
ID決定の自動化には文字列のハッシュコードが採用されています。
ハッシュコード算出は典型的に「ハッシュコード = ハッシュコード * (入力型(文字列の場合char型)サイズのビット数-1) ^ 配列要素」という計算を、 配列要素の個数だけ繰り返すロジックが採用されています。このテンプレートクラスで最終的にラップするのか、このテンプレートクラスをベースクラスにして継承して拡張するのかは自由です。