33 SDO_TRKRパッケージ(位置追跡)
MDSYS.SDO_TRKRパッケージには、位置追跡サーバーを使用するためのサブプログラムが含まれています。
これらのサブプログラムを使用するには、「位置追跡サーバー」に記載の概念と技術について理解する必要があります。
トピック:
33.1 SDO_TRKR.CREATE_TRACKING_REGIONS
構文
SDO_TRKR.CREATE_TRACKING_REGIONS( region_set_name IN VARCHAR2, num_trkr_queues IN NUMBER(38), num_loc_queues IN NUMBER(38));
説明
位置追跡サーバーに必要な追跡地域セット、表およびキューを作成します。
パラメータ
使用上の注意
このプロシージャでは、位置追跡サーバーに必要な表およびキューを作成します。これを実行して追跡サーバーに必要なオブジェクトを設定します。これは、追跡サーバーを有効にするために必要な最初のステップです。
位置追跡サーバーの概念および使用方法については、「位置追跡サーバー」を参照してください。
例
次の例では、10個の追跡キューと10個の位置キューを持つTRACKING_REGIONSという名前の追跡ネットワークを作成します。
EXECUTE SDO_TRKR.CREATE_TRACKING_REGIONS('TRACKING_REGIONS', 10, 10);
33.2 SDO_TRKR.DESTROY_TRACKING_REGIONS
構文
SDO_TRKR.DESTROY_TRACKING_REGIONS( region_set_name IN VARCHAR2, num_trkr_queues IN NUMBER(38), num_loc_queues IN NUMBER(38));
説明
位置追跡サーバーに必要な追跡地域セット、表およびキューを破棄(削除)します。
パラメータ
使用上の注意
このプロシージャは、以前にSDO_TRKR.CREATE_TRACKING_REGIONSプロシージャをコールして作成した追跡ネットワークを破棄します。
位置追跡サーバーの概念および使用方法については、「位置追跡サーバー」を参照してください。
例
次の例では、TRACKING_REGIONSという名前の追跡ネットワークを破棄します。
EXECUTE SDO_TRKR.DESTROY_TRACKING_REGIONS('TRACKING_REGIONS', 10, 10);
33.3 SDO_TRKR.SEND_LOCATION_MSGS
構文
SDO_TRKR.SEND_LOCATION_MSGS( region_set_name IN VARCHAR2, location_msgs IN LOCATION_MSG_ARR, queue_no IN NUMBER DEFAULT NULL);
説明
追跡対象のオブジェクトの新しい位置情報を送信します。
パラメータ
使用上の注意
このプロシージャは、追跡目的で新しい位置メッセージを追加します。追跡対象のオブジェクトの新しい位置が取得されたら、このプロシージャを使用してそのオブジェクトの位置を更新できます。
location_msgsパラメータはLOCATION_MSG_ARR型で、「位置追跡サーバー用のデータ型」に定義があります。
各メッセージには、オプションのタイムスタンプ値を含めることができます。このタイムスタンプ値は位置情報とともに保持されています
位置追跡サーバーの概念および使用方法については、「位置追跡サーバー」を参照してください。
例
次の例では、新しい位置メッセージを追加します。メッセージには、タイムスタンプ値が含まれます。例では、queue_no値は指定されていません。
EXECUTE SDO_TRKR.SEND_LOCATION_MSGS('TEST', LOCATION_MSG_ARR(location_msg(1, '02-AUG-16 01.53.46.000000 PM', 1,1)));
33.4 SDO_TRKR.SEND_TRACKING_MSG
構文
SDO_TRKR.SEND_TRACKING_MSG( region_set_name IN VARCHAR2, tracking_msg IN TRACKER_MSG;
説明
必要なキューに追跡オブジェクトを挿入します。追跡対象の移動するオブジェクトごとに1つのTRACKER_MSGが必要です。
パラメータ
使用上の注意
このプロシージャでは、指定した追跡地域セットに対して追跡されるオブジェクトが新たに作成されます
tracking_msパラメータはTRACKER_MSG型で、「位置追跡サーバー用のデータ型」に定義があります。
位置追跡サーバーの概念および使用方法については、「位置追跡サーバー」を参照してください。
例
次の例では、IDが1 (2つ目のパラメータ)のポリゴンに対して追跡されるIDが1 (1つ目の値)の新しい追跡オブジェクトをTESTという名前の追跡地域セットに挿入します。ISTRACKINSIDEをNに、ISACTIVEをYに指定することも行っています。
EXECUTE SDO_TRKR.SEND_TRACKING_MSG('TEST', TRACKER_MSG(1, 1, 'N', 'Y'));
33.5 SDO_TRKR.START_TRACKING_REGIONS
構文
SDO_TRKR.START_TRACKING_REGIONS( region_set_name IN VARCHAR2, num_trkr_queues IN NUMBER(38) DEFAULT NULL, num_loc_queues IN NUMBER(38) DEFAULT NULL);
説明
位置追跡サーバー用のキューを起動し、それらのキューをモニターするジョブを起動します。
パラメータ
使用上の注意
このプロシージャは、SDO_TRKR.CREATE_TRACKING_REGIONSプロシージャをコールして以前に作成した追跡地域セットをアクティブ化します。
位置追跡サーバーの概念および使用方法については、「位置追跡サーバー」を参照してください。
例
次の例では、以前に作成した追跡地域セットをアクティブ化します。
EXECUTE SDO_TRKR.START_TRACKING_REGIONS('TRACKING_REGIONS', 10, 10);
33.6 SDO_TRKR.STOP_TRACKING_REGIONS
構文
SDO_TRKR.STOP_TRACKING_REGIONS( region_set_name IN VARCHAR2, num_trkr_queues IN NUMBER(38) DEFAULT NULL, num_loc_queues IN NUMBER(38) DEFAULT NULL);
説明
位置追跡サーバー用のキューを停止し、それらのキューをモニターするジョブを停止します。
パラメータ
使用上の注意
このプロシージャは、SDO_TRKR.START_TRACKING_REGIONSプロシージャをコールして以前に起動した追跡ネットワークを停止します。
位置追跡サーバーの概念および使用方法については、「位置追跡サーバー」を参照してください。
例
次の例では、TRACKING_REGIONSネットワークを停止します。
EXECUTE SDO_TRKR.STOP_TRACKING_REGIONS('TRACKING_REGIONS', 10, 10);