SophiaFramework UNIVERSE 5.3 |
BREW 2.0 | BREW 2.1 | BREW 3.1 | BREW 4.0 |
---|---|---|---|
× | × | × | ○ |
パブリック関数 | |
---|---|
SFCError |
CreateInstance(
AEECLSID id
, SFBPrivSetSmpConstRef privSet
, SFBBaseSmpPtr result
) 指定されたクラスのインスタンスをインスタンス化します。
|
Void |
Exit( Void ) SFBModインスタンス化を取り消します。
|
SFCError |
Init( Void ) SFBMod (コンポーネント)のインスタンスを使用できるように初期設定します。
|
SFCError |
New(
SFBEnvSmpConstRef env
, AEECLSID id
, SFBBaseSmpPtr pOut
) エクスポートするモジュール中のクラスに対し、作成要求を満足する新しい SFBModを作成します。
|
SFCError |
QueryInterface(
AEECLSID clsid
, VoidHandle handle
)
(SFBQuery から継承)
このオブジェクトからの別の API を問い合わせます。
|
SFCError |
QueryInterface(
AEECLSID clsid
, SFBBaseSmpPtr handle
)
(SFBQuery から継承)
このオブジェクトからの別の API を問い合わせます。
|
SFBBaseSmp |
QueryInterface(
AEECLSID clsid
)
(SFBQuery から継承)
このオブジェクトからの別の API を問い合わせます。
|
Void |
Self(
AEECLSID clsidReq
, SFBQuerySmpPtr clone
, AEECLSID clsidImp
)
(SFBQuery から継承)
オブジェクトを単一インターフェースで実装するときに使います。
|
SFBQuerySmp |
Self(
AEECLSID clsidReq
, AEECLSID clsidImp
)
(SFBQuery から継承)
オブジェクトを単一インターフェースで実装するときに使います。
|
プロテクト関数 | |
---|---|
static SFBBaseSmp |
FactoryByCreate(
AEECLSID id
, SFCErrorPtr exception = null
)
(SFBBase から継承)
指定したクラス ID のインターフェースのインスタンスを生成します。
|
static SFBBaseSmp |
FactoryByQuery(
SFBQuerySmpConstRef query
, AEECLSID id
, SFCErrorPtr exception = null
)
(SFBBase から継承)
指定したクラス ID のインターフェースのインスタンスを指定した SFBQuery インスタンスを使用して生成します。
|
[ public ] SFCError CreateInstance( AEECLSID id // インスタンス化するクラスの AEECLSID SFBPrivSetSmpConstRef privSet // コールの権限レベル。インスタンス化中のクラスが権限をチェックする場合に備えて提供されている SFBBaseSmpPtr result // 要求されたクラスの新しいインスタンスを入れるためのポインタ );
AEE_SUCCESS クラスのインスタンスが作成された場合。そうでなければ、AEEError.hからの障害特定のエラー値。
[ public ] Void Exit(Void);
この関数は、 SFBMod::Init()とまったく逆でなければなりません。これは、コンポーネントのコードイメージをアンロードする前に、コンポーネントに対して呼び出される最後のコールです。
[ public ] SFCError Init(Void);
SFBMod が初期設定されると、AEE_SUCCESS。それ以外では、 AEEError( IEnv_CreateInstance()のコール側に戻される)。
この関数は、インフラストラクチャが SFBMod::Init()中に、まずこの SFBModを参照でき、SFBMod::Init()へのコール「中」であっても、コンポーネント中のクラスのインスタンスに対する要求が成功するように、 SFBMod::New()から分離します。
[ public ] SFCError New( SFBEnvSmpConstRef env // モジュールに対する SFBEnv へのポインタ。 AEECLSID id // 新しい SFBMod オブジェクトに対する希望のインタフェースの AEEIID(初期には常にAEEIID_IMod) SFBBaseSmpPtr pOut // SFBModの新しいインスタンスを入れるためのポインタ。 );
AEE_SUCCESS クラスのインスタンスが作成された場合。そうでなければ、AEEError.hからの障害特定のエラー値。
この関数の実装は厳格に最小限度であるべきです。つまり、 SFBModインスタンスに対してのみメモリを割り当て、 SFBEnvを保存して返します。 SFBMod のより複雑な実装は、実装が成功する確率を最大にするために、 SFBMod_Init()で実行される必要があります。
この関数が応答を返すまで、この SFBMod への参照はなく、この関数が返すまでの間、呼び出されたコンポーネント内のクラスのインスタンスへのリクエストは失敗します。
Copyright(c) 2002 - 2024 Sophia Cradle Incorporated All Rights Reserved. |