Quick Reference |
個々の関数の詳細については、右側の選択ボックスを使用してください。
int nni_get_interface( int iVersion, void** ppnni_func );
この関数は、Natural Native Interface のインスタンスを返します。
この関数は、アプリケーションでプラットフォーム依存のシステムコールを使用してインターフェイスライブラリが取得され、ロードされた後に呼び出されます。 この関数を使用すると、個々のインターフェイス関数を示す関数ポインタが含まれている構造へのポインタが返されます。 構造内で返される関数は、インターフェイスのバージョン間で異なる場合があります。
インターフェイスバージョンを指定する代わりに、定数 NNI_VERSION_CURR
を指定することもできます。この場合は、最新のインターフェイスバージョンが常に参照されます。 特定の Natural バージョンに属するインターフェイスバージョン番号は、そのバージョンとともに提供されるヘッダーファイル natni.h 内で定義されています。 Natural バージョン n.n の場合、インターフェイスバージョン番号は NNI_VERSION_nn
として定義されます。 NNI_VERSION_CURR
も NNI_VERSION_nn
として定義されます。 関数が呼び出された Natural バージョンで、要求されるインターフェイスバージョンがサポートされていない場合は、エラーコード NNI_RC VERSION_ERROR
が返されます。 これ以外の場合のリターンコードは、NNI_RC_OK
です。
関数によって返されるポインタは、インターフェイスの 1 つのインスタンスを表します。 このインターフェイスインスタンスを使用するため、アプリケーションではこのポインタが保持され、後続のインターフェイスコールに渡されます。
通常、アプリケーションで任意のインスタンスに対して nni_initialize
を呼び出すことによって、Natural セッションがその後初期化されます。 アプリケーションで Natural セッションの使用が終了すると、同じインスタンスに対して nni_uninitialize
が呼び出されます。 これ以降は、この同じインターフェイスインスタンス上で別の Natural セッションを初期化できるようになります。 アプリケーションでインターフェイスインスタンスの使用が完全に終了した後は、このインスタンスに対して nni_free_interface
が呼び出されます。
パラメータ | 意味 |
---|---|
iVersion |
インターフェイスバージョン番号 (NNI_VERSION_nn または NNI_VERSION_CURR )。
|
ppnni_func |
リターン時に NNI インターフェイスインスタンスをポイントします。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_VERSION_ERROR
|
int nni_free_interface(void* pnni_func);
この関数は、アプリケーションでインターフェイスインスタンスの使用が終了し、ホストされていた Natural セッションが初期化解除された後に呼び出されます。 この関数によって、インターフェイスインスタンスが占有していたリソースが解放されます。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
int nni_initialize(void* pnni_func, const char* szCmdLine, void*, void*);
この関数は、任意のコマンド行を使用して Natural セッションを初期化します。 コマンド行の構文と語義は、Natural を対話形式で開始した場合と同じです。 すでに任意のインターフェイスインスタンスによって Natural セッションが初期化されている場合は、新しいセッションが初期化される前に、そのセッションが暗黙的に初期化解除されます。
コマンド行は、ユーザーの操作がなくても Natural の初期化が完了するように指定する必要があります。 つまり、プログラムがスタックに渡されたり、起動プログラムが指定されたりしている場合には特に、満たされていない INPUT
ステートメントをプログラムでスタックから実行ないでください。 実行した場合は、Natural セッションの後続の動作が不確定になります。
Natural セッションは、バッチセッションとしてサーバーモードで初期化されます。 このことは、実行された Natural モジュールにおける特定のステートメントおよびコマンドの使用が制限されることを意味します。 このような制限およびエラー状態は、『オペレーション』ドキュメントの「NaturalX サーバー環境でのステートメントおよびコマンドの使用」セクションの説明と同じです。
Natural Security で Natural セッションを初期化するときは、セッションを開始するために自由に選択したデフォルトライブラリに対する LOGON
コマンド、および適切なユーザー ID やパスワードをコマンド行に含める必要があります。
例:
int iRes = pnni_func->nni_initialize( pnni_func, "STACK=(LOGON,MYLIB,MYUSER,MYPASS)", 0, 0);
この後にアプリケーションで異なるユーザー ID を使用して別のライブラリに対して nni_logon
を呼び出し、その後 nni_logoff
を呼び出すと、nni_initialize
で渡されたライブラリおよびユーザー ID に対して Natural セッションがリセットされます。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
szCmdLine |
Natural コマンド行。 NULL ポインタを使用できます。 |
void* |
将来的に使用される予定。 NULL ポインタである必要があります。 |
void* |
将来的に使用される予定。 NULL ポインタである必要があります。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_PARM_ERROR
|
|
rc(rc < NNI_RC_SERR_OFFSET )
|
Natural スタートアップエラー。 『オペレーション』ドキュメントの一部である「Natural スタートアップエラー」で説明されている実際の Natural スタートアップエラー番号は、次の計算で求めることができます。
startup-error-nr = - (rc - セッションの初期化中に発生する警告は無視されます。 |
> 0 | Natural エラー番号。 |
int nni_is_initialized( void* pnni_func, int* piIsInit );
この関数は、インターフェイスインスタンスに初期化済みの Natural セッションが含まれているかどうかをチェックします。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
piIsInit |
Natural セッションが初期化されていない場合には 0 が、初期化されている場合には 0 以外の値が返されます。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_PARM_ERROR
|
int nni_uninitialize(void* pnni_func);
この関数は、指定したインターフェイスインスタンスによってホストされている Natural セッションを初期化解除します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
int nni_enter(void* pnni_func);
この関数は、現在のスレッドで、インターフェイスインスタンスおよびホストする Natural セッションへの排他的アクセスを待機できるようにします。 スレッドは、他のスレッドに中断されない一連のインターフェイスコールを発行するときに、この関数を呼び出します。
スレッドは、nni_leave
を呼び出して、インターフェイスインスタンスへの排他的アクセスを解放します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
int nni_try_enter(void* pnni_func);
この関数は、nni_enter
と同様に機能しますが、スレッドをブロックする代わりに、通常、即座に値を返します。 すでに別のスレッドがインターフェイスインスタンスに排他アクセスを行っている場合は、NNI_RC_LOCKED
を返します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_LOCKED
|
int nni_leave(void* pnni_func);
この関数は、インターフェイスインスタンスへの排他的アクセスを解放し、そのインスタンスおよびホストする Natural セッションに他のスレッドがアクセスできるようにします。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
int nni_logon(void* pnni_func, const char* szLibrary, const char* szUser, const char* szPassword);
この関数は、指定された Natural ライブラリに対する LOGON
を実行します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
szLibrary |
Natural ライブラリの名前。 |
szUser |
Natural ユーザーの名前。 Natural セッションが Natural Security で実行中ではない場合、または初期化中に AUTO=ON が使用された場合は、NULL ポインタを使用できます。
|
szPassword |
上記ユーザーのパスワード。 Natural セッションが Natural Security で実行中ではない場合、または初期化中に AUTO=ON が使用された場合は、NULL ポインタを使用できます。
|
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
> 0 | Natural エラー番号。 |
int nni_logoff(void* pnni_func);
この関数は、現在の Natural ライブラリからの LOGOFF
を実行します。 以前のアクティブなライブラリおよびユーザー ID に LOGON
することと同じです。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
> 0 | Natural エラー番号。 |
int nni_callnat(void* pnni_func, const char* szName, int iParm, struct parameter_description* rgDesc, struct natural_exception* pExcep);
関数が Natural サブプログラムを呼び出します。
関数は、パラメータを parameter_description
構造の配列として受け取ります。 呼び出し元は、NNI 関数を使用して、次の方法でこれらの構造を作成します。
関数 create_parm
または create_module_parm
を使用すると、サブプログラムの適切なパラメータセットを作成できます。
create_parm
を使用した場合、関数 init_parm_*
を使用して、各パラメータを適切な Natural データフォーマットに初期化します。 create_module_parm
を使用した場合、パラメータはすでに適切な Natural データフォーマットに初期化されています。
関数 nni_put_parm
または nni_put_parm_array
を使用すると、値を各パラメータに割り当てることができます。
セット内の各パラメータで nni_get_parm
を呼び出します。 これにより、parameter_description
構造に値が指定されます。
parameter_description
構造の配列を関数 nni_callnat
に渡します。
コールが実行されたら、関数 nni_get_parm
または nni_get_parm_array
を使用して、パラメータセットから修正されたパラメータ値を抽出します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
szName |
Natural サブプログラムの名前。 |
iParm |
パラメータの数。 配列 rgDesc のオカレンス数を示します。
|
rgDesc |
サブプログラムのパラメータを含む、parm_description 構造の配列。 サブプログラムでパラメータが必要ない場合、呼び出し元は NULL ポインタを渡します。
|
pExcep |
natural_exception 構造へのポインタ。 サブプログラムの実行中に Natural エラーが発生すると、この構造に Natural エラー情報が記述されます。 呼び出し元は NULL ポインタを指定できます。 この場合、拡張されたエラー情報は返されません。
|
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_NO_MEMORY
|
|
> 0 | Natural エラー番号。 |
int nni_callnat(void* pnni_func, const char* szName, int iParm, struct parameter_description* rgDesc, struct natural_exception* pExcep);
関数が Natural サブプログラムを呼び出します。
関数は、パラメータを parameter_description
構造の配列として受け取ります。 呼び出し元は、NNI 関数を使用して、次の方法でこれらの構造を作成します。
関数 create_parm
または create_module_parm
を使用すると、サブプログラムの適切なパラメータセットを作成できます。
create_parm
を使用した場合、関数 init_parm_*
を使用して、各パラメータを適切な Natural データフォーマットに初期化します。 create_module_parm
を使用した場合、パラメータはすでに適切な Natural データフォーマットに初期化されています。
関数 nni_put_parm
または nni_put_parm_array
を使用すると、値を各パラメータに割り当てることができます。
セット内の各パラメータで nni_get_parm
を呼び出します。 これにより、parameter_description
構造に値が指定されます。
parameter_description
構造の配列を関数 nni_callnat
に渡します。
コールが実行されたら、関数 nni_get_parm
または nni_get_parm_array
を使用して、パラメータセットから修正されたパラメータ値を抽出します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
szName |
Natural サブプログラムの名前。 |
iParm |
パラメータの数。 配列 rgDesc のオカレンス数を示します。
|
rgDesc |
サブプログラムのパラメータを含む、parm_description 構造の配列。 サブプログラムでパラメータが必要ない場合、呼び出し元は NULL ポインタを渡します。
|
pExcep |
natural_exception 構造へのポインタ。 サブプログラムの実行中に Natural エラーが発生すると、この構造に Natural エラー情報が記述されます。 呼び出し元は NULL ポインタを指定できます。 この場合、拡張されたエラー情報は返されません。
|
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_NO_MEMORY
|
|
> 0 | Natural エラー番号。 |
int nni_create_object(void* pnni_func, const char* szName, int iParm, struct parameter_description* rgDesc, struct natural_exception* pExcep);
Natural オブジェクト(Natural クラスのインスタンス)を作成します。
関数は、パラメータを、parameter_description
構造の 1 つの要素の配列として受け取ります。 呼び出し元は、NNI 関数を使用して、次の方法でこれらの構造を作成します。
関数 nni_create_parm
を使用すると、1 つの要素を含むパラメータセットを作成できます。
関数 nni_init_parm_s
を使用すると、タイプ HANDLE OF OBJECT
のパラメータを初期化できます。
このパラメータで nni_get_parm_info
を呼び出します。 これにより、parameter_description
構造に値が指定されます。
parameter_description
構造を関数 nni_create_object
に渡します。
コールが実行された後、関数 nni_get_parm
の 1 つを使用して、パラメータセットから修正されたパラメータ値を抽出します。
rgDesc
で渡されたパラメータの意味は、次のとおりです。
最初かつ唯一のパラメータは、データタイプ HANDLE OF OBJECT
で初期化する必要があります。リターン時にはこのパラメータに、新しく作成されたオブジェクトの Natural オブジェクトハンドルが含まれます。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
szName |
クラスの名前。 |
iParm |
パラメータの数。 配列 rgDesc のオカレンス数を示します。
|
rgDesc |
オブジェクト作成用のパラメータを含む、parm_description 構造の配列。 呼び出し元は、常に 1 つのパラメータを渡します。リターン時にはこのパラメータにオブジェクトハンドルが含まれます。
|
pExcep |
natural_exception 構造へのポインタ。 オブジェクトの作成中に Natural エラーが発生すると、この構造に Natural エラー情報が記述されます。 呼び出し元は NULL ポインタを指定できます。 この場合、拡張された例外情報は返されません。
|
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_NO_MEMORY
|
|
> 0 | Natural エラー番号。 |
int nni_send_method(void* pnni_func, const char* szName, int iParm, struct parameter_description* rgDesc, struct natural_exception* pExcep);
Natural オブジェクト(Natural クラスのインスタンス)にメソッドコールを送ります。
関数は、パラメータを parameter_description
構造の配列として受け取ります。 呼び出し元は、NNI 関数を使用して、次の方法でこれらの構造を作成します。
関数 nni_create_parm
または nni_create_method_parm
を使用すると、一致するパラメータセットを作成できます。
create_parm
を使用した場合、関数 init_parm_*
を使用して、各パラメータを適切な Natural データフォーマットに初期化します。 nni_create_method_parm
を使用した場合、パラメータはすでに適切な Natural データフォーマットに初期化されています。
関数 nni_put_parm
または nni_put_parm_array
を使用すると、値を各パラメータに割り当てることができます。
セット内の各パラメータで nni_get_parm_info
を呼び出します。 これにより、parameter_description
構造に値が指定されます。
parameter_description
構造の配列を関数 nni_send_method
に渡します。
コールが実行されたら、関数 nni_get_parm
の 1 つを使用して、パラメータセットから修正されたパラメータ値を抽出します。
rgDesc
で渡されたパラメータの意味は、次のとおりです。
最初のパラメータには、オブジェクトハンドルが含まれています。
2 つ目のパラメータは、メソッドの戻り値のデータタイプに初期化する必要があります。 メソッドに戻り値がない場合、2 つ目のパラメータは初期化されないままです。 メソッドコールからのリターン時には、このパラメータにメソッドの戻り値が含まれます。
残りのパラメータはメソッドパラメータです。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
szName |
メソッドの名前。 |
iParm |
パラメータの数。 配列 rgDesc のオカレンス数を示します。 常に 2 + メソッドパラメータの数になります。
|
rgDesc |
メソッドのパラメータを含む、parm_description 構造の配列。 メソッドでパラメータが要求されない場合でも、呼び出し元は 2 つのパラメータを渡します。1 つ目はオブジェクトハンドルに、2 つ目は戻り値に使用されます。
|
pExcep |
natural_exception 構造へのポインタ。 メソッドの実行中に Natural エラーが発生すると、この構造に Natural エラー情報が記述されます。 呼び出し元は NULL ポインタを指定できます。 この場合、拡張された例外情報は返されません。
|
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_NO_MEMORY
|
|
> 0 | Natural エラー番号。 |
int nni_get_property(void* pnni_func, const char* szName, int iParm, struct parameter_description* rgDesc, struct natural_exception* pExcep);
Natural オブジェクト(Natural クラスのインスタンス)のプロパティ値を取得します。
関数は、パラメータを parameter_description
構造の配列として受け取ります。 呼び出し元は、NNI 関数を使用して、次の方法でこれらの構造を作成します。
関数 nni_create_parm
または nni_create_method_parm
を使用すると、一致するパラメータセットを作成できます。
create_parm
を使用した場合、関数 init_parm_*
を使用して、各パラメータを適切な Natural データフォーマットに初期化します。 create_method_parm
を使用した場合、パラメータはすでに適切な Natural データフォーマットに初期化されています。
関数 nni_put_parm
または nni_put_parm_array
を使用すると、値を各パラメータに割り当てることができます。
セット内の各パラメータで nni_get_parm_info
を呼び出します。 これにより、parameter_description
構造に値が指定されます。
parameter_description
構造の配列を関数 nni_send_method
に渡します。
コールが実行されたら、関数 nni_get_parm
の 1 つを使用して、パラメータセットから修正されたパラメータ値を抽出します。
rgDesc
で渡されたパラメータの意味は、次のとおりです。
最初のパラメータには、オブジェクトハンドルが含まれています。
2 つ目のパラメータは、プロパティのデータタイプに初期化されまます。 プロパティアクセスからのリターン時には、このパラメータにプロパティ値が含まれています。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
szName |
プロパティの名前。 |
iParm |
パラメータの数。 配列 rgDesc のオカレンス数を示します。 これは常に 2 です。
|
rgDesc |
プロパティへのアクセス用のパラメータを含む、parm_description 構造の配列。 呼び出し元は常に 2 つのパラメータを渡します。1 つ目はオブジェクトハンドルに、2 つ目は返されるプロパティ値に使用されます。
|
pExcep |
natural_exception 構造へのポインタ。 プロパティへのアクセス中に Natural エラーが発生すると、この構造に Natural エラー情報が記述されます。 呼び出し元は NULL ポインタを指定できます。 この場合、拡張された例外情報は返されません。
|
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_NO_MEMORY
|
|
> 0 | Natural エラー番号。 |
int nni_set_property(void* pnni_func, const char* szName, int iParm, struct parameter_description* rgDesc, struct natural_exception* pExcep);
Natural オブジェクト(Natural クラスのインスタンス)にプロパティ値を割り当てます。
関数は、パラメータを parameter_description
構造の配列として受け取ります。 呼び出し元は、NNI 関数を使用して、次の方法でこれらの構造を作成します。
関数 nni_create_parm
または nni_create_prop_parm
を使用して、一致するパラメータセットを作成します。
create_parm
を使用した場合、関数 init_parm_*
を使用して、各パラメータを適切な Natural データフォーマットに初期化します。 create_prop_parm
を使用した場合、パラメータはすでに適切な Natural データフォーマットに初期化されています。 関数 nni_put_parm
の 1 つを使用して、各パラメータに値を割り当てます。
関数 nni_put_parm
または nni_put_parm_array
を使用すると、値を各パラメータに割り当てることができます。
セット内の各パラメータで nni_get_parm_info
を呼び出します。 これにより、parameter_description
構造に値が指定されます。
parameter_description
構造の配列を関数 nni_set_property
に渡します。
rgDesc
で渡されたパラメータの意味は、次のとおりです。
最初のパラメータには、オブジェクトハンドルが含まれています。
2 つ目のパラメータには、プロパティ値が含まれています。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
szName |
プロパティの名前。 |
iParm |
パラメータの数。 配列 rgDesc のオカレンス数を示します。 これは常に 2 です。
|
rgDesc |
プロパティへのアクセス用のパラメータを含む、parm_description 構造の配列。 呼び出し元は常に 2 つのパラメータを渡します。1 つ目はオブジェクトハンドルに、2 つ目はプロパティ値に使用されます。
|
pExcep |
natural_exception 構造へのポインタ。 プロパティへのアクセス中に Natural エラーが発生すると、この構造に Natural エラー情報が記述されます。 呼び出し元は NULL ポインタを指定できます。 この場合、拡張された例外情報は返されません。
|
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_NO_MEMORY
|
|
> 0 | Natural エラー番号。 |
int nni_delete_object(void* pnni_func, int iParm, struct parameter_description* rgDesc, struct natural_exception* pExcep);
nni_create_object
で作成した Natural オブジェクト(Natural クラスのインスタンス)を削除します。
関数は、パラメータを、parameter_description
構造の 1 つの要素の配列として受け取ります。 呼び出し元は、NNI 関数を使用して、次の方法でこれらの構造を作成します。
関数 nni_create_parm
を使用すると、1 つの要素を含むパラメータセットを作成できます。
関数 nni_init_parm_s
を使用すると、タイプ HANDLE OF OBJECT
のパラメータを初期化できます。
関数 nni_put_parm
の 1 つを使用して、パラメータに値を割り当てます。
このパラメータで nni_get_parm_info
を呼び出します。 これにより、parameter_description
構造に値が指定されます。
parameter_description
構造を関数 nni_delete_object
に渡します。
rgDesc
で渡されたパラメータの意味は、次のとおりです。
最初かつ唯一のパラメータは、データタイプ HANDLE OF OBJECT
で初期化する必要があります。このパラメータには、削除される オブジェクトの Natural オブジェクトハンドルが含まれています。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
szName |
クラスの名前。 |
iParm |
パラメータの数。 配列 rgDesc のオカレンス数を示します。 これは常に 1 です。
|
rgDesc |
オブジェクト作成用のパラメータを含む、parm_description 構造の配列。 呼び出し元は常に 1 つのパラメータを渡します。このパラメータにはオブジェクトハンドルが含まれています。
|
pExcep |
natural_exception 構造へのポインタ。 オブジェクトの作成中に Natural エラーが発生すると、この構造に Natural エラー情報が記述されます。 呼び出し元は NULL ポインタを指定できます。 この場合、拡張された例外情報は返されません。
|
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_NO_MEMORY
|
|
> 0 | Natural エラー番号。 |
int nni_create_parm(void* pnni_func, int iParm, void** pparmhandle);
Natural モジュールに渡すことができるパラメータセットを作成します。
セットに含まれているパラメータは、まだ Natural の特定のデータタイプに初期化されていません。 このパラメータを nni_callnat
、nni_create_object
、nni_send_method
、nni_set_property
、または nni_get_property
へのコールで使用する前に、次の手順が必要です。
関数 nni_init_parm_s
、nni_init_parm_sa
、nni_init_parm_d
、nni_init_parm_da
のうちの 1 つを使用して、各パラメータを必要な Natural データタイプに初期化します。
関数 nni_put_parm
または nni_put_parm_array
を使用すると、値を各パラメータに割り当てることができます。
関数 nni_get_parm_info
を使用して、各パラメータを parm_description
構造に変更します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iParm |
要求されたパラメータ数。 パラメータの最大数は 32767 です。 |
pparmhandle |
リターン時のパラメータセットへのポインタ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_ILL_PNUM
|
|
> 0 | Natural エラー番号。 |
int nni_create_module_parm(void* pnni_func, char chType, const char* szName, void** pparmhandle);
nni_callnat
へのコールで使用できるパラメータセットを作成します。 この関数を使用すると、呼び出し可能な Natural モジュールの署名をアプリケーションでダイナミックに検索できます。
返されるセットに含まれているパラメータは、指定されたモジュールのパラメータデータエリアに従って、すでに Natural データタイプに初期化されています。 このパラメータセットを nni_callnat
へのコールで使用する前に、次の手順が必要です。
関数 nni_put_parm
または nni_put_parm_array
を使用すると、値を各パラメータに割り当てることができます。
関数 nni_get_parm_info
を使用して、各パラメータを parm_description
構造に変更します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
chType |
Natural モジュールのタイプ。 常に "N" です(サブプログラムの場合)。 |
szName |
Natural モジュールの名前。 |
pparmhandle |
リターン時のパラメータセットへのポインタ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
> 0 | Natural エラー番号。 |
int nni_create_method_parm( void* pnni_func, const char* szClass, const char* szMethod, void** pparmhandle );
nni_send_method
へのコールで使用できるパラメータセットを作成します。 この関数を使用すると、Natural クラスのメソッドの署名をアプリケーションでダイナミックに検索できます。
返されるパラメータセットには、メソッドパラメータだけでなく、nni_send_method
で必要なその他のパラメータも含まれています。 つまり、メソッドに n 個のパラメータがある場合、パラメータセットには n + 2 個のパラメータが含まれることになります。
セットの最初のパラメータは、データタイプ HANDLE OF OBJECT
に初期化されます。
セットの 2 つ目のパラメータは、メソッドの戻り値のデータタイプに初期化されます。 メソッドに戻り値がない場合、2 つ目のパラメータは初期化されません。
セットの残りのパラメータは、メソッドパラメータのデータタイプに初期化されます。
このパラメータセットを nni_send_method
へのコールで使用する前に、次の手順が必要です。
関数 nni_put_parm
または nni_put_parm_array
を使用すると、値を各パラメータに割り当てることができます。
関数 nni_get_parm_info
を使用して、各パラメータを parm_description
構造に変更します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
szClass |
Natural クラスの名前。 |
szMethod |
Natural メソッドの名前。 |
pparmhandle |
リターン時のパラメータセットへのポインタ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
> 0 | Natural エラー番号。 |
int nni_create_prop_parm(void* pnni_func, const char* szClass, const char* szProp,void** pparmhandle);
nni_get_property
または nni_set_property
へのコールで使用できるパラメータセットを作成します。 返されるパラメータセットには、nni_get_property
または nni_set_property
で必要となるすべてのパラメータが含まれます。 この関数を使用すると、Natural クラスのプロパティのデータタイプをアプリケーションで決定できます。
セットの最初のパラメータは、データタイプ HANDLE OF OBJECT
に初期化されます。
セットの 2 つ目のパラメータは、プロパティのデータタイプに初期化されます。
このパラメータセットを nni_get_property
または nni_set_property
へのコールで使用する前に、次の手順が必要です。
関数 nni_put_parm
または nni_put_parm_array
を使用すると、値を各パラメータに割り当てることができます。
関数 nni_get_parm_info
を使用して、各パラメータを parm_description
構造に変更します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
szClass |
Natural クラスの名前。 |
szProp |
Natural プロパティの名前。 |
pparmhandle |
リターン時のパラメータセットへのポインタ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
> 0 | Natural エラー番号。 |
int nni_parm_count( void* pnni_func, void* parmhandle, int* piParm )
この関数は、パラメータセット内のパラメータの数を取得します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
parmhandle |
パラメータセットへのポインタ。 |
piParm |
パラメータセット内のパラメータの数を返します。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
int nni_init_parm_s(void* pnni_func, int iParm, void* parmhandle, char chFormat, int iLength, int iPrecision, int iFlags);
パラメータセット内のパラメータをスタティックデータタイプに初期化します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iParm |
パラメータのインデックス。 セットの最初のパラメータには、インデックス 0 が含まれます。 |
parmhandle |
パラメータセットへのポインタ。 |
chFormat |
パラメータの Natural データタイプ。 |
iLength |
パラメータの Natural の長さ。 |
iPrecision |
小数点以下の桁数(NNI_TYPE_NUM および NNI_TYPE_PACK のみ)。
|
iFlags |
パラメータフラグ。 次のフラグを使用できます。
|
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_ILL_PNUM
|
|
NNI_RC_NO_MEMORY
|
|
NNI_RC_BAD_FORMAT
|
|
NNI_RC_BAD_LENGTH
|
int nni_init_parm_sa (void* pnni_func, int iParm, void* parmhandle, char chFormat, int iLength, int iPrecision, int iDim, int* rgiOcc, int iFlags);
パラメータセット内のパラメータをスタティックデータタイプの配列に初期化します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iParm |
パラメータのインデックス。 セットの最初のパラメータには、インデックス 0 が含まれます。 |
parmhandle |
パラメータセットへのポインタ。 |
chFormat |
パラメータの Natural データタイプ。 |
iLength |
パラメータの Natural の長さ。 |
iPrecision |
小数点以下の桁数(NNI_TYPE_NUM および NNI_TYPE_PACK のみ)。
|
iDim |
パラメータの配列次元。 |
rgiOcc |
各次元のオカレンス数を示す、int 値の 3 次元配列。 未使用の次元のオカレンス数は、0 として指定する必要があります。 |
iFlags |
パラメータフラグ。 次のフラグを使用できます。
NNI_FLG_*VAR* フラグの 1 つが設定されている場合、配列は X-array です。 各次元で、下限または上限のいずれかだけを変数にすることができます(両方を変数にすることはできません)。 このため、例えば、フラグ IF4_FLG_LBVAR_0 を IF4_FLG_UBVAR_0 と組み合わせることはできません。
|
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_ILL_PNUM
|
|
NNI_RC_NO_MEMORY
|
|
NNI_RC_BAD_FORMAT
|
|
NNI_RC_BAD_LENGTH
|
|
NNI_RC_BAD_DIM
|
|
NNI_RC_BAD_BOUNDS
|
int nni_init_parm_d(void* pnni_func, int iParm, void* parmhandle, char chFormat, int iFlags);
パラメータセット内のパラメータをダイナミックデータタイプに初期化します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iParm |
パラメータのインデックス。 セットの最初のパラメータには、インデックス 0 が含まれます。 |
parmhandle |
パラメータセットへのポインタ。 |
chFormat |
パラメータの Natural データタイプ(NNI_TYPE_ALPHA または NNI_TYPE_BIN )。
|
iFlags |
パラメータフラグ。 次のフラグを使用できます。
|
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_ILL_PNUM
|
|
NNI_RC_NO_MEMORY
|
|
NNI_RC_BAD_FORMAT
|
int nni_init_parm_da (void* pnni_func, int iParm, void* parmhandle, char chFormat, int iDim, int* rgiOcc, int iFlags);
パラメータセット内のパラメータをダイナミックデータタイプの配列に初期化します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iParm |
パラメータのインデックス。 セットの最初のパラメータには、インデックス 0 が含まれます。 |
parmhandle |
パラメータセットへのポインタ。 |
chFormat |
パラメータの Natural データタイプ(NNI_TYPE_ALPHA または NNI_TYPE_BIN )。
|
iDim |
パラメータの配列次元。 |
rgiOcc |
各次元のオカレンス数を示す、int 値の 3 次元配列。 未使用の次元のオカレンス数は、0 として指定する必要があります。 |
iFlags |
パラメータフラグ。 次のフラグを使用できます。
NNI_FLG_*VAR* フラグの 1 つが設定されている場合、配列は X-array です。 各次元で、下限または上限のいずれかだけを変数にすることができます(両方を変数にすることはできません)。 このため、例えば、フラグ IF4_FLG_LBVAR_0 を IF4_FLG_UBVAR_0 と組み合わせることはできません。
|
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_ILL_PNUM
|
|
NNI_RC_NO_MEMORY
|
|
NNI_RC_BAD_FORMAT
|
|
NNI_RC_BAD_DIM
|
|
NNI_RC_BAD_BOUNDS
|
int nni_get_parm_info (void* pnni_func, int iParm, void* parmhandle, struct parameter_description* pDesc);
パラメータセット内の特定のパラメータに関する詳細情報を返します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iParm |
パラメータのインデックス。 セットの最初のパラメータには、インデックス 0 が含まれます。 |
parmhandle |
パラメータセットへのポインタ。 |
pDesc |
パラメータ記述構造 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_ILL_PNUM
|
int nni_get_parm(void* pnni_func, int iParm, void* parmhandle, int iBufferLength, void* pBuffer);
パラメータセット内の特定のパラメータの値を返します。 pBuffer
で指定されたアドレスのバッファに、iBufferLength
に指定されたサイズで値が返されます。 値が正常に返されると、このバッファには Natural 内部フォーマットのデータが含まれます。 バッファの内容を解釈する方法については、「Natural データタイプ」を参照してください。
Natural データタイプに基づくパラメータの長さが iBufferLength
よりも長い場合は、Natural によってデータが指定された長さに切り捨てられ、コード NNI_RC_DATA_TRUNC
が返されます。 呼び出し元は、関数 nni_get_parm_info
を使用して、パラメータ値の長さを事前に要求できます。
Natural データタイプに基づくパラメータの長さが iBufferLength
よりも短い場合は、Natural によってパラメータの長さまでバッファが埋められ、リターンコードにコピーされたデータの長さが返されます。
パラメータが配列である場合は、バッファ内の配列全体が返されます。 このことは、固定サイズ要素の固定サイズ配列に対してのみ意味があります。これは、これ以外の場合には呼び出し元がバッファの内容を解釈できないためです。 任意の配列の個別オカレンスを取得するには、関数
nni_get_parm_array
を使用します。
pBuffer
に指定されたアドレスに割り当てられた iBufferLength
で、メモリのサイズが指定されていない場合、操作の結果は予測できません。 Natural では、pBuffer
が NULL ではないことのみがチェックされます。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iParm |
パラメータのインデックス。 セットの最初のパラメータには、インデックス 0 が含まれます。 |
parmhandle |
パラメータセットへのポインタ。 |
iBufferLength |
pBuffer で指定されたバッファの長さ。
|
pBuffer |
値が返されるバッファ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_ILL_PNUM
|
|
NNI_RC_DATA_TRUNC
|
|
= n(n > 0) | 操作が成功しました。ただし、バッファに返されたのは n バイトのみでした。 |
int nni_get_parm_array(void* pnni_func, int parmnum, void* parmhandle, int iBufferLength, void* pBuffer, int* rgiInd);
パラメータセット内の特定の配列パラメータの特定のオカレンスの値を返します。 nni_get_parm
との唯一の違いは、配列インデックスを指定できる点です。 未使用の次元のインデックス数は、0 として指定する必要があります。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iParm |
パラメータのインデックス。 セットの最初のパラメータには、インデックス 0 が含まれます。 |
parmhandle |
パラメータセットへのポインタ。 |
iBufferLength |
pBuffer で指定されたバッファの長さ。
|
pBuffer |
値が返されるバッファ。 |
rgiInd |
特定の配列オカレンスを示す、int 値の 3 次元配列。 インデックスは 0 で始まります。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_ILL_PNUM
|
|
NNI_RC_DATA_TRUNC
|
|
NNI_RC_NOT_ARRAY
|
|
NNI_RC_BAD_INDEX_0
|
|
NNI_RC_BAD_INDEX_1
|
|
NNI_RC_BAD_INDEX_2
|
|
= n(n > 0) | 操作が成功しました。ただし、返されたのは n バイトのみでした。 |
int nni_get_parm_array_length(void* pnni_func, int iParm, void* parmhandle, int* piLength, int* rgiInd);
パラメータセット内の特定の配列パラメータの特定のオカレンスの長さを返します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iParm |
パラメータのインデックス。 セットの最初のパラメータには、インデックス 0 が含まれます。 |
parmhandle |
パラメータセットへのポインタ。 |
piLength |
返される値の長さの int 値へのポインタ。 |
rgiInd |
特定の配列オカレンスを示す、int 値の 3 次元配列。 インデックスは 0 で始まります。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_ILL_PNUM
|
|
NNI_RC_DATA_TRUNC
|
|
NNI_RC_NOT_ARRAY
|
|
NNI_RC_BAD_INDEX_0
|
|
NNI_RC_BAD_INDEX_1
|
|
NNI_RC_BAD_INDEX_2
|
int nni_put_parm(void* pnni_func, int iParm, void* parmhandle, int iBufferLength, const void* pBuffer);
パラメータセット内の特定のパラメータに値を割り当てます。 pBuffer
で指定されたアドレスのバッファ内の関数に、iBufferLength
に指定されたサイズで値が渡されます。 バッファの内容を作成する方法については、「Natural データタイプ」を参照してください。
Natural データタイプに基づくパラメータの長さが、指定されたバッファの長さよりも短い場合、データは指定されたパラメータの長さに切り捨てられます。 バッファの残りは無視されます。 Natural データタイプに基づくパラメータの長さが、指定されたバッファの長さよりも長い場合、データは指定されたバッファの長さまでしかコピーされず、パラメータ値の残りはそのまま残ります。 Natural データタイプの内部的な長さについては、「Natural データタイプ」を参照してください。
パラメータがダイナミック変数である場合は、指定されたバッファの長さに従って、自動的にサイズ変更されます。
パラメータが配列である場合、関数ではバッファ内の配列全体が要求されます。 このことは、固定サイズ要素の固定サイズ配列に対してのみ意味があります。これは、これ以外の場合には呼び出し元がバッファの内容を解釈できないためです。 任意の配列の個々のオカレンスの値を割り当てるには、関数
nni_put_parm_array
を使用します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iParm |
パラメータのインデックス。 セットの最初のパラメータには、インデックス 0 が含まれます。 |
parmhandle |
パラメータセットへのポインタ。 |
iBufferLength |
pBuffer で指定されたバッファの長さ。
|
pBuffer |
値が渡されるバッファ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_ILL_PNUM
|
|
NNI_RC_WRT_PROT
|
|
NNI_RC_DATA_TRUNC
|
|
NNI_RC_NO_MEMORY
|
|
= n(n > 0) | 操作が成功しました。ただし、使用されたバッファは n バイトののみでした。 |
int nni_put_parm_array(void* pnni_func, int iParm, void* parmhandle, int iBufferLength, const void* pBuffer, int* rgiInd);
パラメータセット内の特定の配列パラメータの特定のオカレンスに値を割り当てます。 nni_get_parm
との唯一の違いは、配列インデックスを指定できる点です。 未使用の次元のインデックス数は、0 として指定する必要があります。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iParm |
パラメータのインデックス。 セットの最初のパラメータには、インデックス 0 が含まれます。 |
parmhandle |
パラメータセットへのポインタ。 |
iBufferLength |
pBuffer で指定されたバッファの長さ。
|
pBuffer |
値が渡されるバッファ。 |
rgiInd |
特定の配列オカレンスを示す、int 値の 3 次元配列。 インデックスは 0 で始まります。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_ILL_PNUM
|
|
NNI_RC_WRT_PROT
|
|
NNI_RC_DATA_TRUNC
|
|
NNI_RC_NO_MEMORY
|
|
NNI_RC_NOT_ARRAY
|
|
NNI_RC_BAD_INDEX_0
|
|
NNI_RC_BAD_INDEX_1
|
|
NNI_RC_BAD_INDEX_2
|
|
= n(n > 0) | 操作が成功しました。ただし、使用されたバッファは n バイトののみでした。 |
int nni_resize_parm_array(void* pnni_func, int iParm, void* parmhandle, int* rgiOcc);
パラメータセット内の特定の X-array パラメータのオカレンス数を変更します。 n 次元配列では、すべての n 次元についてオカレンス数を指定する必要があります。 配列の次元が 3 次元未満の場合は、値 0 を使用しない次元に指定する必要があります。
この関数では、任意の X-array について下限または上限の適切な方を変更することによって、各次元のオカレンス数のサイズ変更が試行されます。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iParm |
パラメータのインデックス。 セットの最初のパラメータには、インデックス 0 が含まれます。 |
parmhandle |
パラメータセットへのポインタ。 |
rgiOcc |
配列の新しいオカレンス数を示す int 値の 3 次元配列。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
NNI_RC_ILL_PNUM
|
|
NNI_RC_WRT_PROT
|
|
NNI_RC_DATA_TRUNC
|
|
NNI_RC_NO_MEMORY
|
|
NNI_RC_NOT_ARRAY
|
|
NNI_RC_NOT_RESIZABLE
|
|
> 0 | Natural エラー番号。 |
int nni_delete_parm(void* pnni_func, void* parmhandle);
指定されたパラメータセットを削除します。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
parmhandle |
パラメータセットへのポインタ。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
int nni_from_string(void* pnni_func, const char* szString, char chFormat, int iLength, int iPrecision, int iBufferLength, void* pBuffer);
Natural P 値、N 値、D 値、または T 値の文字列表現を、関数 nni_get_parm
、nni_get_parm_array
、nni_put_parm
、および nni_put_parm_array
で使用されるような値の内部表現に変換します。
これらの Natural データタイプの文字列表現は、次のようになります。
フォーマット | 文字列表現 |
---|---|
P、N | "-3.141592" など。ここでは、DC パラメータで定義した小数点文字が使用されます。
|
D | DTFORM パラメータで定義した日付フォーマット(例:DTFORM=I の場合は "2004-07-06")。
|
T | DTFORM パラメータで定義した日付フォーマットを hh:ii:ss:t 形式の時刻の値と組み合わせたもの(例:DTFORM=I であれば "2004-07-06 11:30:42:7")、または hh:ii:ss:t 形式の時刻の値(例:"11:30:42:7")。
|
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
szString |
値の文字列表現。 |
chFormat |
値の Natural データタイプ。 |
iLength |
値の Natural の長さ。 NNI_TYPE_NUM および NNI_TYPE_PACK の場合の有効桁の総数。これ以外の場合は、0。
|
iPrecision |
NNI_TYPE_NUM および NNI_TYPE_PACK の場合の小数点以下の桁数。これ以外の場合は、0。
|
iBufferLength |
pBuffer で指定されたバッファの長さ。
|
pBuffer |
リターン時に値の内部表現が含まれるバッファ。 このバッファには、値の Natural 内部表現を十分に格納できる大きさが必要です。 必要なサイズについては、「ユーザー定義変数のフォーマットおよび長さ」に記載されています。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
> 0 | Natural エラー番号 |
int nni_to_string(void* pnni_func, int iBufferLength, const void* pBuffer, char chFormat, int iLength, int iPrecision, int iStringLength, char* szString);
Natural P 値、N 値、D 値、または T 値の内部表現を、関数 nni_get_parm
、nni_get_parm_array
、nni_put_parm
、および nni_put_parm_array
で使用されるような文字列表現に変換します。
これらの Natural データタイプの文字列表現は、関数 nni_from_string
で説明したものと同じです。
パラメータ | 意味 |
---|---|
pnni_func |
NNI インターフェイスインスタンスへのポインタ。 |
iBufferLength |
pBuffer で指定されたバッファの長さ。
|
pBuffer |
値の内部表現が含まれるバッファ。 必要なサイズについては、「ユーザー定義変数のフォーマットおよび長さ」に記載されています。 |
chFormat |
値の Natural データタイプ。 |
iLength |
値の Natural の長さ。 NNI_TYPE_NUM および NNI_TYPE_PACK の場合の有効桁の総数。これ以外の場合は、0。
|
iPrecision |
NNI_TYPE_NUM および NNI_TYPE_PACK の場合の小数点以下の桁数。これ以外の場合は、0。
|
iStringLength |
szString で指定される文字列バッファに最後のゼロを加えた長さ。
|
szString |
リターン時に値の文字列表現が含まれている文字列バッファ。 この文字列バッファには、最後のゼロを含む外部表現を十分に格納できる大きさが必要です。 |
リターンコードの意味については、「リターンコード」の説明を参照してください。
リターンコード | 注釈 |
---|---|
NNI_RC_OK
|
|
NNI_RC_NOT_INIT
|
|
NNI_RC_PARM_ERROR
|
|
> 0 | Natural エラー番号 |