第3章 C APIリファレンス
3.2 住所クレンジング
3.2.2 ステータス情報操作
3.2.2.1 iqjaddress_cleanser_createStatus
機能説明
住所クレンジングのステータス情報格納用のIQJADDRESS_CLEANSING_STATUSインスタンスを生成して返却します。
iqjaddress_cleanser_destroyStatus関数とセットで呼び出してください。
呼び出し形式
int iqjaddress_cleanser_createStatus ( IQJADDRESS_CLEANSING_STATUS *status, int index,
char *message,
size_t messageBufferSize, void *reserve
);
パラメーターの説明
IQJADDRESS_CLEANSING_STATUS *status 【OUT】
住 所 ク レ ン ジ ン グ の ス テ ー タ ス 情 報 格 納 用 イ ン ス タ ン ス を 保 持 す る ア ド レ ス を 指 定 し ま す 。 関 数 が 成 功 す る と IQJADDRESS_CLEANSING_STATUSインスタンスが生成され、インスタンスのアドレスが格納されます。
NULLを指定した場合、エラーとなります。
int index 【IN】
何個分のステータス情報を格納できるIQJADDRESS_CLEANSING_STATUSを生成するかを指定します。
1~50の数値を指定してください。
参考
複 数 の 住 所 情 報 ス テ ー タ ス を 必 要 と す る の は 、iqjaddress_cleanser_getAddressesByPostalCodeとiqjaddress_cleanser_
getAddressCandidatesです。
char *message 【OUT】
復帰値に対応したメッセージを格納する領域のアドレスを指定します。領域は呼出元が確保する必要があります。
格納されるメッセージについては「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。文字列はNULLターミネート されます。
メッセージは最長で1023バイトです(NULLターミネートは含みません)。
NULLを指定した場合、メッセージは取得されません。
size_t messageBufferSize 【IN】
messageパラメーターで与えられる領域の大きさをバイト数で指定します。
0を指定した場合はメッセージは取得されません。
指定されたバイト数がメッセージを格納するのに十分な大きさでない場合、可能な限り書き込みます。メッセージは途中で切れます が、NULLターミネート文字列になることは保証されます。
void *reserve 【IN】
予約域です。NULLを指定します。NULL以外を指定した場合はエラーになります。
復帰値
正常終了した場合は0で復帰します。エラーが発生した場合は0以外で復帰します。
復帰値の詳細は「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。
3.2.2.2 iqjaddress_cleanser_destroyStatus
機能説明
住所クレンジングのステータス情報格納用のIQJADDRESS_CLEANSING_STATUSインスタンスを破棄します。
呼び出し形式
int iqjaddress_cleanser_destroyStatus ( IQJADDRESS_CLEANSING_STATUS status, char *message,
size_t messageBufferSize, void *reserve
);
パラメーターの説明
IQJADDRESS_CLEANSING_STATUS status 【IN】
住 所 ク レ ン ジ ン グ の ス テ ー タ ス 情 報 格 納 用 イ ン ス タ ン ス を 指 定 し ま す 。iqjaddress_cleanser_createStatus関 数 で 取 得 し た IQJADDRESS_CLEANSING_STATUSインスタンスを指定します。
NULLを指定した場合、エラーとなります。
char *message 【OUT】
復帰値に対応したメッセージを格納する領域のアドレスを指定します。領域は呼出元が確保する必要があります。
格納されるメッセージについては「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。文字列はNULLターミネート されます。
メッセージは最長で1023バイトです(NULLターミネートは含みません)。
NULLを指定した場合、メッセージは取得されません。
size_t messageBufferSize 【IN】
messageパラメーターで与えられる領域の大きさをバイト数で指定します。
0を指定した場合はメッセージは取得されません。
指定されたバイト数がメッセージを格納するのに十分な大きさでない場合、可能な限り書き込みます。メッセージは途中で切れます が、NULLターミネート文字列になることは保証されます。
void *reserve 【IN】
予約域です。NULLを指定します。NULL以外を指定した場合はエラーになります。
復帰値
正常終了した場合は0で復帰します。エラーが発生した場合は0以外で復帰します。
復帰値の詳細は「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。
3.2.2.3 iqjaddress_cleanser_getStatusCode
機能説明
住所クレンジングのステータス情報格納用のIQJADDRESS_CLEANSING_STATUSインスタンスからコードを取得します。
取得されるコードは、「8.4.4 住所クレンジング」の「回答コード」です。
注意
各クレンジング関数が正常終了した場合だけ呼び出してください。正常終了でない場合の動作は不定です。
呼び出し形式
int iqjaddress_cleanser_getStatusCode ( const IQJADDRESS_CLEANSING_STATUS status, int index,
int groupID, int *code, char *message,
size_t messageBufferSize, void *reserve
);
パラメーターの説明
const IQJADDRESS_CLEANSING_STATUS status 【IN】
住 所 ク レ ン ジ ン グ の ス テ ー タ ス 情 報 格 納 用 イ ン ス タ ン ス を 指 定 し ま す 。iqjaddress_cleanser_createStatus関 数 で 取 得 し た IQJADDRESS_CLEANSING_STATUSインスタンスを指定します。
NULLを指定した場合、エラーとなります。
int index 【IN】
iqjaddress_cleanser_getAddress/iqjaddress_cleanser_getAddressByChimeiCode を利用した場合 -1を指定してください。
iqjaddress_cleanser_getAddressCandidates/iqjaddress_cleanser_getAddressesByPostalCode を利用した場合 status内の何番目の住所情報から取得するかを指定します。
-1を指定すると、クレンジング関数の処理ステータス情報を取得できます。
0以上が指定された場合は、指定番目の住所情報の処理ステータス情報を取得できます。最初の住所情報の処理ステータス 情報を取得するときは0を指定します。
格納されているデータ数の範囲外の値を指定した場合、エラーとなります。
詳細は「8.4.1 ステータス情報の構造と取得方法」を参照してください。
int groupID 【IN】
取得するステータス情報のIDを指定します。利用したクレンジング関数によって指定可能なIDが違います。
指定可能なIDは以下のとおりです。
iqjaddress_cleanser_getAddressを利用した場合
「8.4.4.1 文字列からの住所特定」のIDを使用してください。
iqjaddress_cleanser_getAddressCandidatesを利用した場合
クレンジング関数の処理ステータス情報を取得する場合は、「8.4.4.2 文字列からの住所類推」のIDを使用してください。
住所情報の処理ステータス情報を取得する場合は、「8.4.4.1 文字列からの住所特定」のIDを使用してください。
iqjaddress_cleanser_getAddressByChimeiCodeを利用した場合
「8.4.4.3 地名コードからの住所特定」のIDを使用してください。
iqjaddress_cleanser_getAddressesByPostalCodeを利用した場合
クレンジング関数の処理ステータス情報を取得する場合は、「8.4.4.4 郵便番号からの住所特定」のIDを使用してください。
住所情報の処理ステータス情報を取得する場合は、「8.4.4.1 文字列からの住所特定」のIDを使用してください。
int *code 【OUT】
処理情報の数値を格納する領域を指定します。
取得呼び出し時のパラメーターをチェックする目的でNULLを指定することができます。NULLを指定した場合、処理情報値は取 得されません。
格納される値については「8.4.4 住所クレンジング」を参照してください。
char *message 【OUT】
復帰値に対応したメッセージを格納する領域のアドレスを指定します。領域は呼出元が確保する必要があります。
格納されるメッセージについては「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。文字列はNULLターミネート されます。
メッセージは最長で1023バイトです(NULLターミネートは含みません)。
NULLを指定した場合、メッセージは取得されません。
size_t messageBufferSize 【IN】
messageパラメーターで与えられる領域の大きさをバイト数で指定します。
0を指定した場合はメッセージは取得されません。
指定されたバイト数がメッセージを格納するのに十分な大きさでない場合、可能な限り書き込みます。メッセージは途中で切れます が、NULLターミネート文字列になることは保証されます。
void *reserve 【IN】
予約域です。NULLを指定します。NULL以外を指定した場合はエラーになります。
復帰値
正常終了した場合は0で復帰します。エラーが発生した場合は0以外で復帰します。
復帰値の詳細は「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。