(57)【要約】【課題】  制御の最終状態を表す情報通知となるように、保持している情報通知の削除処理を行うことで、アプリケーション間で生じ得る情報の不整合を解消すること。【解決手段】第一の制御アプリケーションと第二の制御アプリケーションとの間の通信に基づいて、放射線発生装置と放射線検出器を制御することが可能な放射線撮影システムは、通信の接続状態を監視する接続監視部と、接続監視部により接続状態が切断状態と判定された場合に、制御を行う第一の制御アプリケーションの撮影制御部の制御状態を示す情報通知を保持する保持部と、撮影制御部による制御の最終状態を表す情報通知となるように保持部に保持されている情報通知の削除処理を行う削除処理部と、を備える。【選択図】  図２
2020146168.tif 000002
【特許請求の範囲】
【請求項１】
第一の制御アプリケーションと第二の制御アプリケーションとの間の通信に基づいて、放射線発生装置と放射線検出器を制御することが可能な放射線撮影システムであって、
前記通信の接続状態を監視する接続監視手段と、
前記接続監視手段により前記接続状態が切断状態と判定された場合に、前記制御を行う前記第一の制御アプリケーションの撮影制御手段の制御状態を示す情報通知を保持する保持手段と、
前記撮影制御手段による制御の最終状態を表す情報通知となるように前記保持手段に保持されている情報通知の削除処理を行う削除処理手段と、
を備えることを特徴とする放射線撮影システム。
【請求項２】
前記削除処理手段は、前記情報通知の属性に基づいて削除対象となる情報通知を特定することを特徴とする請求項１に記載の放射線撮影システム。
【請求項３】
前記接続監視手段の監視結果に基づいて、前記保持手段に保持されている前記情報通知の取得を制御する制御手段と、
前記保持手段に保持されている前記情報通知を取得する取得手段と、
前記取得手段により取得された前記情報通知を前記第二の制御アプリケーションに送信する通信手段と、を更に備え、
前記接続監視手段により切断状態と判定された場合に、前記制御手段は前記取得手段による前記情報通知の取得を停止させることを特徴とする請求項１または２に記載の放射線撮影システム。
【請求項４】
前記削除処理手段は、前記切断状態と判定された後において前記保持手段に最初に保持された情報通知が、上位属性を有する情報通知である場合、当該上位属性を有する情報通知と、当該上位属性を有する情報通知に関連付けられた情報通知とにより構成される情報通知の集合を特定することを特徴とする請求項２または３に記載の放射線撮影システム。
【請求項５】
前記削除処理手段は、処理対象となる情報通知よりも前に前記保持手段に保持された前記集合に属する情報通知の削除処理を行うことを特徴とする請求項４に記載の放射線撮影システム。
【請求項６】
前記削除処理手段は、前記切断状態と判定された後において前記保持手段に最後に保持された情報通知が、上位属性を有する情報通知である場合、当該上位属性を有する情報通知と、当該上位属性を有する情報通知に関連付けられた情報通知とにより構成される情報通知の集合を特定することを特徴とする請求項２または３に記載の放射線撮影システム。
【請求項７】
前記削除処理手段は、前記特定された情報通知の集合に含まれない情報通知の削除処理を行うことを特徴とする請求項６に記載の放射線撮影システム。
【請求項８】
前記情報通知には、前記第一の制御アプリケーションにより提供されるＧＵＩの画面遷移に関する通知が含まれることを特徴とする請求項１乃至７のいずれか１項に記載の放射線撮影システム。
【請求項９】
前記情報通知には、前記第一の制御アプリケーションにより提供されるＧＵＩの画面内操作に関する通知が含まれることを特徴とする請求項８に記載の放射線撮影システム。
【請求項１０】
前記情報通知には、前記第一の制御アプリケーションの撮影制御手段による放射線撮影の状態に関する通知が含まれることを特徴とする請求項１乃至９のいずれか１項に記載の放射線撮影システム。
【請求項１１】
前記第二の制御アプリケーションは、
前記第一の制御アプリケーションとの間の通信の接続状態を監視する接続監視手段を備え、
前記接続監視手段により前記接続状態が切断状態と判定された場合、前記第二の制御アプリケーションにより提供されるＧＵＩに、被検者情報が取得できないことを表示させることを特徴とする請求項１乃至１０のいずれか１項に記載の放射線撮影システム。
【請求項１２】
前記削除処理手段は、前記情報通知の集合に対して、優先的に処理する順番を定めた優先度を設定し、設定した優先度に基づいて情報通知の順序を入れ替えることを特徴とする請求項１乃至１１のいずれか１項に記載の放射線撮影システム。
【請求項１３】
前記接続監視手段により切断状態と判定された後、再接続されたと判定された場合に、前記制御手段は前記取得手段による前記情報通知の取得を再開させることを特徴とする請求項３に記載の放射線撮影システム。
【請求項１４】
前記通信手段は、前記削除処理手段により削除処理が行われた前記保持手段から前記情報通知を取得して前記第二の制御アプリケーションに送信することを特徴とする請求項１３に記載の放射線撮影システム。
【請求項１５】
第一の制御アプリケーションと第二の制御アプリケーションとの間の通信に基づいて、放射線発生装置と放射線検出器を制御することが可能な放射線撮影システムの制御方法であって、
前記通信の接続状態を監視する接続監視工程と、
前記接続監視工程により前記接続状態が切断状態と判定された場合に、前記制御を行う前記第一の制御アプリケーションの撮影制御手段の制御状態を示す情報通知を保持手段に保持する保持工程と、
前記撮影制御手段による制御の最終状態を表す情報通知となるように前記保持手段に保持されている情報通知の削除処理を行う削除処理工程と、
を有することを特徴とする放射線撮影システムの制御方法。
【請求項１６】
前記削除処理工程では、前記情報通知の属性に基づいて削除対象となる情報通知を特定することを特徴とする請求項１５に記載の放射線撮影システムの制御方法。
【請求項１７】
前記接続監視工程での監視結果に基づいて、前記保持手段に保持されている前記情報通知の取得を制御する制御工程と、
前記保持手段に保持されている前記情報通知を取得する取得工程と、
前記取得工程で取得された前記情報通知を前記第二の制御アプリケーションに送信する通信工程と、を更に有し、
前記接続監視工程において切断状態と判定された場合に、前記制御工程では前記取得工程による前記情報通知の取得を停止させることを特徴とする請求項１５または１６に記載の放射線撮影システムの制御方法。
【請求項１８】
前記情報通知には、前記第一の制御アプリケーションにより提供されるＧＵＩの画面遷移に関する通知が含まれることを特徴とする請求項１５乃至１７のいずれか１項に記載の放射線撮影システムの制御方法。
【請求項１９】
前記情報通知には、前記第一の制御アプリケーションの撮影制御手段による放射線撮影の状態に関する通知が含まれることを特徴とする請求項１５乃至１８のいずれか１項に記載の放射線撮影システムの制御方法。
【請求項２０】
前記第二の制御アプリケーションでは、
前記第一の制御アプリケーションとの間の通信の接続状態を監視する監視手段が当該接続状態を監視する監視工程を有し、
前記監視工程において前記接続状態が切断状態と判定された場合、前記第二の制御アプリケーションにより提供されるＧＵＩに、被検者情報が取得できないことを表示させることを特徴とする請求項１５乃至１９のいずれか１項に記載の放射線撮影システムの制御方法。
【請求項２１】
前記削除処理工程では、前記情報通知の集合に対して、優先的に処理する順番を定めた優先度を設定し、設定した優先度に基づいて情報通知の順序を入れ替えることを特徴とする請求項１５乃至２０のいずれか１項に記載の放射線撮影システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、放射線撮影システム及び放射線撮影システムの制御方法に関するものであり、特に放射線撮影を制御するアプリケーションと連動して別のアプリケーションを動作させるための技術に関するものである。
【背景技術】
【０００２】
近年、放射線撮影システムのデジタル化により、放射線源から被写体を介して放射線撮像装置に放射線を照射し、放射線撮像装置がデジタル放射線画像を生成し、撮影直後の画像確認が可能となるシステムが普及している。さらに、ネットワーク連携技術の進歩により異なる装置のソフトウェア同士が連携して動作したりすることが可能となってきている。
【０００３】
特許文献１には、１つの操作端末と複数のユーザー端末が通信して動作する医用システム及び医用装置において、Ｓｐｌａｓｈｔｏｐ  Ｔｏｕｃｈｐａｄという公知のリモートデスクトップの仕組みを用い、複数のユーザー端末からの操作が同時に操作されることによる操作の衝突を回避する発明が開示されている。特許文献１の発明によれば、操作する人物や、操作する場所により操作に優先度をつけたり、操作者の役割によって優先度をつけたりするようになっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第６１９５３４８号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の医用システムでは、リモートデスクトップを前提としており、異なるＧＵＩを持つアプリケーション間や異なるオペレーティングシステム（ＯＳ）で動作するアプリケーション間での処理、すなわち、複数のアプリケーション間での処理を連携することができない。
【０００６】
また、複数のアプリケーションが連携して処理を実行するシステムにおいて、アプリケーション間の接続が切断された場合、連携動作を再開するためには接続の復旧後、双方のアプリケーション間で生じ得る情報の不整合を解消した状態にする必要がある。
【０００７】
本発明は、複数のアプリケーションが連携して処理を実行するシステムにおいて、アプリケーション間の接続が切断状態になり、その後再接続となった場合であっても、
制御の最終状態を表す情報通知となるように、保持している情報通知の削除処理を行うことで、アプリケーション間で生じ得る情報の不整合を解消することが可能な技術を提供する。
【課題を解決するための手段】
【０００８】
本発明の一つの態様に係る放射線撮影システムは、第一の制御アプリケーションと第二の制御アプリケーションとの間の通信に基づいて、放射線発生装置と放射線検出器を制御することが可能な放射線撮影システムであって、
前記通信の接続状態を監視する接続監視手段と、
前記接続監視手段により前記接続状態が切断状態と判定された場合に、前記制御を行う前記第一の制御アプリケーションの撮影制御手段の制御状態を示す情報通知を保持する保持手段と、
前記撮影制御手段による制御の最終状態を表す情報通知となるように前記保持手段に保持されている情報通知の削除処理を行う削除処理手段と、を備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、制御の最終状態を表す情報通知となるように、保持している情報通知の削除処理を行うことで、アプリケーション間で生じ得る情報の不整合を解消することが可能になる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態に係る放射線撮影システムの構成例を示す図。
【図２】放射線撮影システムの機能構成を例示する図。
【図３】通信切断により情報の不整合が発生する例を示す図。
【図４】第１の実施形態に係る処理の具体例を示す図。
【図５】処理待ちキューに順次保持さるメッセージを例示する図。
【図６】複数のメッセージにより構成されるメッセージの集合を例示する図。
【図７】第１の実施形態の通信制御部における処理の流れを説明する図。
【図８】第２の実施形態の通信制御部における処理の流れを説明する図。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでするものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。
【００１２】
［第１の実施形態］
（放射線撮影システムの構成例）
図１は、第１の実施形態に係る放射線撮影システム１０の構成例を示す図である。多くの病院では、主に放射線撮影技師（以下、操作者ともいう）が操作卓上の表示装置（モニタ）の表示を見ながら撮影制御装置１５０を操作し、撮影制御装置１５０が放射線発生装置１１や放射線検出器１２を制御することで放射線画像の撮影が行われる。
【００１３】
第一の制御アプリケーション１３は、例えば、撮影制御装置１５０で動作するアプリケーションであり、第一の制御アプリケーション１３の表示制御により、表示装置（モニタ）にはグラフィカルユーザーインターフェース（ＧＵＩ）が提供される。ＧＵＩには、例えば、操作者が放射線撮影のために放射線撮影システムを制御するための情報や被検者情報など撮影を補助するための情報が表示される。
【００１４】
放射線撮影システム１０の構成例では、第一の制御アプリケーション１３は、別端末（例えば、携帯端末１４０）において動作する第二の制御アプリケーション１４と連携して動作することが可能な構成となっている。
【００１５】
第二の制御アプリケーション１４は携帯端末１４０やその他の情報機器で動作することが可能なアプリケーションであり、第二の制御アプリケーション１４の表示制御により、操作者へ情報を提示するためのＧＵＩを携帯端末１４０の表示部に提供する。携帯端末１４０のＧＵＩには、第一の制御アプリケーション１３の表示制御により提供されるＧＵＩの表示内容と異なる情報を表示/通知してもよいし、同様の表示内容を表示してもよい。なお、携帯端末は複数台の端末があってもよいし、操作者へ情報を提供するという目的が達成されるのであれば、ウェアラブル端末などを用いることも可能である。
【００１６】
（検査の進め方）
次に、一般的な検査の進め方について説明する。最初に操作者には院内ネットワークを介して、放射線撮影のオーダーが来る。撮影オーダーは、撮影制御装置１５０に取り込まれ被検者情報や撮影内容が特定される。撮影オーダーが操作者に届く際には、検査室の外で被検者が撮影待機しているのが一般的である。操作者は撮影オーダーに応じて検査室に被検者を呼び入れ、検査の準備を行う。被検者を検査室に招き入れた際には、操作者は被検者の取り違えを防ぐために名前の確認や生年月日の確認などを行う。このとき、操作者は被検者情報として撮影オーダーを受け取った被検者名を携帯端末１４０の画面に表示されている情報と照合して確認したりする。
【００１７】
撮影の準備が整えば、撮影オーダーに応じて、放射線発生装置１１と被検者と放射線検出器１２の位置調整を行う。被検者の状態や撮影オーダーの内容によっては、撮影順番を変更したり、撮影時の被検者の姿勢として、例えば、立位と臥位を入れ替えたり、操作者の判断で変更することが可能である。
【００１８】
その後、操作者は放射線撮影可能と判断すれば、撮影開始の指示を不図示の操作部に入力する。操作部の操作に基づいて、撮影制御装置１５０は放射線発生装置１１及び放射線検出器１２を制御して、放射線発生装置１１から放射線を照射し、放射線検出器１２は被検者を透過した放射線を検出する。放射線検出器１２は、放射線を電気信号に変換するための画素が行列状に複数配列された画素アレイを備えており、変換した電気信号に応じた放射線画像を生成することが可能である。
【００１９】
撮影制御装置１５０は放射線検出器１２と通信可能に構成されており、放射線検出器１２で生成された放射線画像を通信により取得し、撮影制御装置１５０は、取得した放射線画像を表示装置（モニタ）に表示するように表示制御を行う。操作者は、モニタ上に表示された放射線画像を確認し問題がなければ、操作者は次の撮影のポジショニングを行うために検査室に移動し、同様の手順で撮影を行う。次の撮影がなければ検査終了となり、被検者は撮影室から退出する、という流れとなる。
【００２０】
（放射線撮影システムの機能構成）
次に、放射線撮影システムの機能構成について図２を用いて説明する。放射線撮影システム１０は、放射線を発生する放射線発生装置１１と、放射線を検出する放射線検出器１２と、放射線発生装置１１及び放射線検出器１２を制御する撮影制御装置１５０（コンピュータ）とを有する。放射線撮影システム１０は、第一の制御アプリケーションと第二の制御アプリケーションとの間の通信に基づいて、放射線発生装置１１と放射線検出器１２を制御することが可能である。第一の制御アプリケーション１３は、例えば、撮影制御装置１５０（コンピュータ）上で動作するアプリケーションである。第一の制御アプリケーション１３を構成する各部の処理は、撮影制御装置１５０における機能構成として実行される。
【００２１】
第二の制御アプリケーション１４は、第一の制御アプリケーション１３と同一のコンピュータ上で動作するアプリケーションでも良いし、第一の制御アプリケーション１３が動作する撮影制御装置１５０（コンピュータ）とは異なるコンピュータ上（例えば、携帯端末１４０）で動作するアプリケーションであっても良い。また、第二の制御アプリケーション１４は単一のアプリケーションである必要はなく、異なるＧＵＩを提供するアプリケーションが複数存在していてもよい。
【００２２】
次に第一の制御アプリケーション１３の機能構成について説明する。第一の制御アプリケーション１３は、撮影制御部１５と通信制御部１６で構成される。撮影制御部１５は、ＧＵＩを提供し、ＧＵＩの表示を制御したり、放射線撮影システム１０における撮影制御を実行する、第一の制御アプリケーション１３のメインロジック部である。撮影制御部１５のみ単独でも動作可能であり、撮影制御部１５は放射線発生装置１１と放射線検出器１２を連携させながら放射線撮影システム１０を制御する。
【００２３】
通信制御部１６は撮影制御部１５のプラグインとして動作するダイナミックリンクライブラリ（ＤＬＬ）である。プラグインの構造であれば、撮影制御部１５は単独での動作も可能であり、撮影制御部１５と通信制御部１６を連携して動作させることが可能である。プラグイン構造でなければならないというわけではなく撮影制御部１５と通信制御部１６が連携して動作する構成になっていてもよい。本実施形態ではプラグイン構造のＤＬＬであるとして説明する。
【００２４】
次に、通信制御部１６の内部の動作を説明する。通信制御部１６の機能構成として、制御部１６０は、通信制御部１６の内部動作の全体を制御する。メッセージ処理部１６２は、第一の制御アプリケーション１３の撮影制御部１５からの情報を受信処理する。撮影制御部１５が動作に応じて、第二の制御アプリケーション１４に通知すべき情報が発生した場合、撮影制御部１５から通信制御部１６に情報が通知される。ここでは、第一の制御アプリケーション１３の撮影制御部１５から受信した情報を情報通知またはメッセージと呼ぶものとする。ここで、情報通知には、第一の制御アプリケーション１３により提供されるＧＵＩの画面遷移に関する通知やＧＵＩの画面内操作に関する通知が含まれる。また、情報通知には、第一の制御アプリケーション１３の撮影制御部１５による放射線撮影の状態に関する通知が含まれる。
【００２５】
制御部１６０の制御の下、エンキュー処理部１６３は、メッセージ処理部１６２により受信されたメッセージを処理待ちキュー１６８に保持（エンキュー）する。メッセージのエンキューを実施したら、制御部１６０はキュー管理部１６４および削除処理部１６７を制御して、処理待ちキュー１６８にキューイングされているメッセージを管理する。
【００２６】
また、制御部１６０の制御の下、デキュー管理部１６５（取得部）は、処理待ちキュー１６８に保持されているメッセージを取得（デキュー）する。デキュー管理部１６５は、処理待ちキュー１６８から、先入れ先出し方式（ＦＩＦＯ：Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）でメッセージを取得し、メッセージ通信部１６６は、デキュー管理部１６５（取得部）により取得されたメッセージを第二の制御アプリケーション１４のメッセージ通信部１４１に送信する。
【００２７】
また、通信制御部１６は有線または無線のネットワークを介して、第二の制御アプリケーション１４と接続される。通信の接続状態を監視する接続監視部１６１は、そのネットワークの接続状態、あるいは、アプリケーション同士の動作状態に起因した接続状態を監視する。制御部１６０は、接続監視部１６１の監視結果に基づいて、処理待ちキュー１６８（保持部）に保持されている情報通知（メッセージ）の取得を制御する。
【００２８】
接続監視部１６１により切断状態と判定された場合に、制御部１６０はデキュー管理部１６５（取得部）による情報通知（メッセージ）の取得を停止させる。すなわち、第二の制御アプリケーション１４との通信ができない状態、すなわち、接続監視部１６１が切断状態と判断した場合、接続監視部１６１は、制御部１６０を通じてキュー管理部１６４に対して、処理待ちキュー１６８にキューイングされているメッセージの処理が出来ないことを通知する。メッセージの処理が出来ないことを通知されたキュー管理部１６４はデキュー管理部１６５のデキュー処理を停止する。処理待ちキュー１６８は、接続監視部１６１により接続状態が切断状態と判定された場合に、第一の制御アプリケーション１３の撮影制御部１５の制御状態を示す情報通知（メッセージ）を順次保持する。
【００２９】
一方、接続監視部１６１により切断状態と判定された後、再接続されたと判定された場合に、制御部１６０はデキュー管理部１６５（取得部）による情報通知（メッセージ）の取得を再開させる。すなわち、デキュー処理を停止している状態で、接続監視部１６１が再接続されたことを検知した場合、接続監視部１６１は、制御部１６０を通じてキュー管理部１６４に対してキューの処理が可能となったことを通知する。キューの処理が可能となったことを通知されたキュー管理部１６４はデキュー管理部１６５のデキュー処理を再開する。
【００３０】
接続監視部１６１により切断状態と判定された後、再接続されたと判定された場合に、制御部１６０はデキュー管理部１６５（取得部）による情報通知（メッセージ）の取得を再開させる。そして、メッセージ通信部１６６は、削除処理部１６７により削除処理が行われた処理待ちキュー１６８から情報通知を取得して第二の制御アプリケーション１４のメッセージ通信部１４１に送信する。
【００３１】
（通信制御部１６における処理の流れ）
通信制御部１６における処理の流れを図７のフローチャート及び図３〜６を参照して説明する。図７の処理は、通信制御部１６における削除処理部１６７により実行される。削除処理部１６７は、情報通知（メッセージ）の属性に基づいた削除処理を行うことにより、処理待ちキュー１６８に保持されている複数の情報通知（メッセージ）の削除処理を行う。すなわち、削除処理部１６７は、第一の制御アプリケーション１３の撮影制御部１５による制御の最終状態を表す情報通知（メッセージ）となるように処理待ちキュー１６８に保持されている情報通知（メッセージ）の削除処理を行う。
【００３２】
ここでは、前提条件として、接続監視部１６１により切断状態と判断された場合であって、デキュー管理部１６５のデキュー処理は停止しているものとする。ここで、切断状態の判断にはネットワークそのものの接続・非接続状態や、アプリケーションの起動状態による接続・非接続状態も含まれるものとする。
【００３３】
図３は、第一及び第二の制御アプリケーション間で通信状態が非接続状態になった場合、第一及び第二の制御アプリケーション間における情報の不整合が発生する例を示す図である。例えば、図３のシーケンス図に示すように、第一の制御アプリケーション１３と第二の制御アプリケーション１４が互いに接続状態である状態（例えば、画面Ａの表示状態３０１の操作画面を表示している状態）から、ネットワークの切断や第二の制御アプリケーション１４側のアプリケーショントラブルなどにより切断３１１が発生した場合を想定する。この状態において、第一の制御アプリケーション１３側で、画面Ｂの表示状態３０２における第１動作３２１や、画面Ｃの表示状態３０３における第２動作３２２や、画面Ｄの表示状態３０４における第３動作３２３を実施した場合に、第一の制御アプリケーション１３から第二の制御アプリケーション１４に、各動作に関する情報を送信しようとしても、切断状態であるため情報の送信ができなくなる。
【００３４】
第一及び第二の制御アプリケーション間でメッセージを送信することができないような状態となった場合に、接続監視部１６１は切断状態と判断し、接続監視部１６１は、制御部１６０を通じてキュー管理部１６４に対して、処理待ちキュー１６８にキューイングされているメッセージの処理が出来ないことを通知する。この通知に基づいて、キュー管理部１６４はデキュー管理部１６５のデキュー処理を停止する。デキュー管理部１６５はメッセージ通信を停止するためにデキュー管理部の動作を停止する。なお、メッセージの送信をしないことが重要であるため、ソフトウェアの設計・実装上、メッセージを送信してエラーを検知することにより接続状態を監視してもよいし、同様にメッセージの送信エラーによりデキューを停止してもよい。
【００３５】
メッセージの送信ができない状態で、撮影制御部１５が動作することにより情報の通知が発生すると、第二の制御アプリケーション１４側に送信するべきメッセージは、処理待ちキュー１６８に順次保持されていき、滞留することになる。
【００３６】
すなわち、画面Ｂの第１動作３２１、画面Ｃの第２動作３２２、画面Ｄの第３動作３２３に関するメッセージを送信することができないため、第二の制御アプリケーション１４により提供されるＧＵＩ画面Ａは更新されず、第一の制御アプリケーション１３により提供されるＧＵＩにおける画面Ｄの表示状態３０４と、不整合が生じる。すなわち、接続状態が切断状態になると、第一及び第二の制御アプリケーション間での情報に不整合が生じる。
【００３７】
本実施形態では、第一及び第二の制御アプリケーション間での情報に不整合が生じないように、処理待ちキュー１６８に保持されている複数のメッセージのうち、図３に示す画面Ｂの第１動作３２１及び画面Ｃの第２動作３２２に関するメッセージを削除して、画面Ｄの第３動作３２３に関するメッセージのみを残すように、削除処理部１６７が処理待ちキュー１６８に保持されているメッセージの削除処理を行う。
【００３８】
削除処理部１６７は、撮影制御部１５による制御の最終状態を表す情報通知となるように処理待ちキュー１６８に保持されている情報通知（メッセージ）の削除処理を行う。
【００３９】
画面Ｄの第３動作３２３に関するメッセージのみを処理待ちキュー１６８に残すことにより、第一及び第二の制御アプリケーション間の通信状態が接続状態（再接続３１２）になった場合、処理待ちキュー１６８に残されている画面Ｄの第３動作３２３に関するメッセージが第二の制御アプリケーション１４に送信される。第一の制御アプリケーション１３により提供される最新（直近）のＧＵＩにおける画面Ｄの表示状態３０４と、第二の制御アプリケーション１４により提供されるＧＵＩ画面Ｄとが一致して、第一及び第二の制御アプリケーション間における情報の不整合が解消される。
【００４０】
具体的には、通信制御部１６が、メッセージの滞留状態で以下の処理フローを実行する。処理フローは、例えば、通信制御部１６のデキュー管理部１６５がデキュー処理を停止した状態で、次のキュー（最初のキュー）が発生したタイミングやタイマーによる開始通知などにより通信制御部１６の削除処理部１６７による処理が実行される。
【００４１】
図７のステップＳ７０１において、削除処理部１６７は、処理待ちキュー１６８（キュー保持部）に保持されているメッセージのうち、デキュー処理の停止後、最初に処理待ちキュー１６８に保持（エンキュー）されたメッセージを確認する。
【００４２】
ステップＳ７０２において、削除処理部１６７は処理対象のメッセージを決定する。本実施形態では、デキュー処理の停止後、処理待ちキュー１６８に最初に保持（エンキュー）されたメッセージから順に処理対象としていく。最初に処理対象とするのは、処理待ちキュー１６８に保持されているメッセージの中で最も古いものが処理対象となり、その後順に新しいものを処理対象としていく。
【００４３】
ステップＳ７０３において、削除処理部１６７は、処理対象としたメッセージが上位属性を有するメッセージであるかどうか判定する。ここで、上位属性と言うのは、複数のメッセージにより構成されるメッセージの部分集合において、親となるメッセージである。メッセージの部分集合は、親となるメッセージ（主メッセージ）と、主メッセージに関連づけられた関連メッセージとを含む。例えば、図６に示す例では、メッセージの部分集合６１aにおいて、親となる主メッセージは画面Ａ６１１である。また、メッセージの部分集合６２ｂにおいて、親となる主メッセージは画面Ｂ６２１である。
【００４４】
すなわち、ステップＳ７０３の処理では、処理対象となっているメッセージが、部分集合の親（主メッセージ）であるか否かを判定していることになる。例えば、図３のように、撮影制御部１５により提供されるＧＵＩにおいて、画面Ａの表示状態３０１から画面Ｂの表示状態３０２にＧＵＩの画面が遷移した場合、画面Ｂに画面遷移するというメッセージ（例えば、図６の画面Ｂ６２１を示すメッセージ）が、撮影制御部１５から通信制御部１６のメッセージ処理部１６２に通知される。このメッセージが上位属性を有する主メッセージになる。ステップＳ７０３において、処理対象のメッセージが上位属性を有するメッセージ（主メッセージ）でないと、判定された場合（Ｓ７０３−Ｎｏ）、処理はステップＳ７０５に進められ、ステップＳ７０５において、削除処理部１６７は、処理待ちキュー１６８に保持されている次のメッセージの有無を判定する。
【００４５】
ステップＳ７０５の判定処理で、削除処理部１６７は、次のメッセージが有ると判定した場合（Ｓ７０５−Ｙｅｓ）、処理はステップＳ７０２に戻され、同様の処理が繰り返される。また、ステップＳ７０５の判定処理で、処理待ちキュー１６８に次のメッセージが保持されていないと判定された場合（Ｓ７０５−Ｎｏ）、本処理は終了する。
【００４６】
一方、ステップＳ７０３の判定処理で、削除処理部１６７は、処理対象のメッセージが上位属性を有するメッセージ（主メッセージ）であると判定した場合（Ｓ７０３−Ｙｅｓ）、削除処理部１６７は処理をステップＳ７０４に進める。
【００４７】
ステップＳ７０４では、削除処理部１６７は、現在の処理対象となっているメッセージよりも前に、処理待ちキュー１６８に保持（エンキュー）されたメッセージの中から、メッセージ（主メッセージ）と同一の部分集合に属するメッセージを特定し、特定したメッセージを全て削除する。例えば、図６の場合、上位属性を有するメッセージ（主メッセージ）である画面Ａ６１１が処理対象のメッセージであるとすると、画面Ａ６１１と同一の部分集合６１ａに属する操作６１２〜６１５に関するメッセージ（関連メッセージ）は削除対象になる。
【００４８】
すなわち、削除処理部１６７は、切断状態と判定された後において処理待ちキュー１６８に最初に保持された処理対象の情報通知（メッセージ）が、上位属性を有する情報通知（主メッセージ）である場合、当該上位属性を有する情報通知（主メッセージ）と、当該上位属性を有する情報通知に関連付けられた情報通知（関連メッセージ）とにより構成される情報通知の部分集合を特定する。そして、削除処理部１６７は、処理対象となる情報通知よりも前に処理待ちキュー１６８に保持（エンキュー）された情報通知の集合に属する情報通知の削除処理を行う。
【００４９】
（処理の具体例）
図４は、処理の具体例を示す図である。図４のＧＵＩ画面４００は、第一の制御アプリケーション１３における撮影制御部１５の表示制御によって提供されるＧＵＩの画面遷移を示す。操作４０１は、ＧＵＩ画面に対する操作手順を示している。このとき、前提として操作４０１が実施される時には、第一及び第二の制御アプリケーションは非接続状態である。
【００５０】
操作４０１において、ＳｔｅｐＡ１〜ＳｔｅｐＡ３は画面ＡのＡ１ボタン〜Ａ３ボタンに対する操作を示している。ＳｔｅｐＡ４は画面Ａから画面Ｂへ切替える画面遷移の操作である。また、ＳｔｅｐＢ１〜ＳｔｅｐＢ２は画面ＢのＢ１ボタン〜Ｂ２テキスト入力の操作を示している。ＳｔｅｐＢ３は画面Ｂから画面Ｃへ切替える画面遷移の操作である。そして、ＳｔｅｐＣ１〜ＳｔｅｐＣ２は画面ＣのＣ１ラジオボタン〜Ｃ２チェックボックスの操作を示している。
【００５１】
操作４０１が行われた場合、メッセージの削除処理を行わずにメッセージを処理待ちキュー１６８に保持していくと、処理待ちキュー１６８には、メッセージ４０２が順次保持されていく。
【００５２】
例えば、図７のステップＳ７０５では、処理待ちキュー１６８に最初に保持（エンキュー）されたメッセージを処理対象として、順に後続のメッセージを処理していく。現在処理対象としているメッセージの次のメッセージがあれば、そのメッセージを、ステップＳ７０２での処理対象のメッセージとして後続の処理を実施する。次のメッセージがなければ処理は終了する。
【００５３】
図６は、複数のメッセージにより構成されるメッセージの集合を例示する図である。部分集合６１ａにおいて、この部分集合の上位属性を有するメッセージは画面Ａ６１１（図４）への画面遷移を表す。部分集合６２ｂにおいて、この部分集合の上位属性を有するメッセージは画面Ｂ６２１（図４）への画面遷移を表す。そして撮影制御部１５の制御の下に、図４の操作４０１が行われたとすると、その際に通知されるメッセージ４０２が処理待ちキュー１６８に保持される。
【００５４】
図５は処理待ちキュー１６８に順次保持さるメッセージを例示する図である。図４の操作４０１が順に行われたとすると、画面Ａ内での操作５０１〜５０３（図４のＳｔｅｐＡ１〜ＳｔｅｐＡ３）に対するメッセージが処理待ちキュー１６８に順次保持（エンキュー）される（ＳＴ５Ａ）。この間にも図７のフローチャートにおける各ステップの処理は動作するが、何れのメッセージも、ステップＳ７０３の判定で上位属性を有するメッセージ（主メッセージ）と判定されないため、順次対象とするメッセージを処理待ちキュー１６８に保持していく。この後、画面Ａから画面Ｂに画面遷移するメッセージ５０４（図４のＳｔｅｐＡ４）が処理待ちキュー１６８に保持（エンキュー）されると、その時の、処理待ちキュー１６８の保持状態はＳＴ５Ｂに示す状態になる。ここで画面Ａから画面Ｂに画面遷移するメッセージは、部分集合６１ａにおける上位属性を有するメッセージ（主メッセージ）となるため、図７における処理では、ステップＳ７０４で、削除処理を行う。ここで、削除処理部１６７は、現在の処理対象となっているメッセージ５０４よりも前に、処理待ちキュー１６８に保持（エンキュー）されたメッセージ（５０１〜５０３）の中から、メッセージ５０４（主メッセージ）と同一の部分集合６１ａに属するメッセージ（関連メッセージ（５０１〜５０３））を特定し、特定したメッセージ（関連メッセージ（５０１〜５０３）を全て削除する。削除処理を実施した結果はＳＴ５Ｃに示すような状態になる。
【００５５】
同様に画面Ｂ内での操作５０５〜５０６（図４のＳｔｅｐＢ１〜ＳｔｅｐＢ２）に対するメッセージが処理待ちキュー１６８に順次保持（エンキュー）される（ＳＴ５Ｄ）。この間にも図７のフローチャートにおける各ステップの処理は動作するが、何れのメッセージも、ステップＳ７０３の判定で上位属性を有するメッセージ（主メッセージ）と判定されないため、順次対象とするメッセージを処理待ちキュー１６８に保持していく。この後、画面Ｂから画面Ｃに画面遷移するメッセージ５０７（図４のＳｔｅｐＢ３）が処理待ちキュー１６８に保持（エンキュー）されると、その時の、処理待ちキュー１６８の保持状態はＳＴ５Ｅに示す状態になる。ここで画面Ｂから画面Ｃに画面遷移するメッセージは、部分集合６２ｂにおける上位属性を有するメッセージ５０７（主メッセージ）となるため、図７における処理では、ステップＳ７０４で、削除処理を行う。ここで、削除処理部１６７は、現在の処理対象となっているメッセージ５０７よりも前に、処理待ちキュー１６８に保持（エンキュー）されたメッセージ（５０４〜５０６）の中から、メッセージ５０７（主メッセージ）と同一の部分集合６２ｂに属するメッセージ（関連メッセージ（５０５〜５０６））を特定し、特定したメッセージ（関連メッセージ（５０５〜５０６）を全て削除する。
【００５６】
そして、画面Ｃ内での操作５０８〜５０９（図４のＳｔｅｐＣ１〜ＳｔｅｐＣ２）に対するメッセージが処理待ちキュー１６８に順次保持（エンキュー）される（ＳＴ５Ｄ）。この間にも図７のフローチャートにおける各ステップの処理は動作するが、何れのメッセージも、ステップＳ７０３の判定で上位属性を有するメッセージ（主メッセージ）と判定されないため、順次対象とするメッセージを処理待ちキュー１６８に保持していく。この結果はＳＴ５Ｆに示すような状態になる。画面Ａおよび画面Ｂにおける画面内の操作に対するメッセージは削除され、画面遷移に対するメッセージだけが処理待ちキュー１６８に残る。また、最後の画面Ｃの画面操作に対するメッセージ５０４、５０７は処理待ちキュー１６８に残ることになる。こうすることで、最終状態を表すメッセージを処理待ちキュー１６８に保持した状態にする。第一及び第二の制御アプリケーション間での接続が再開したとき、処理待ちキュー１６８に保持されている、制御の最終状態を表すメッセージが、第二の制御アプリケーションに送信する送信対象のメッセージとなる。なお、本実施形態では画面遷移を例に説明したが、メッセージの集合や部分集合は画面遷移や画面内の操作に限定するものではなく、何らかの意味を持った分類でもよい。例えば、検査開始から検査終了までの間の操作に対するメッセージを部分集合としてもよいし、１つの撮影単位の操作に対するメッセージを部分集合としてもよい。
【００５７】
［第２の実施形態］
次に第２の実施形態を説明する。本実施形態では、第１の実施形態との差分を説明する。図８は、第一の制御アプリケーション１３の通信制御部１６における処理の流れを説明する図である。第１の実施形態では、処理待ちキュー１６８（キュー保持部）に保持されているメッセージのうち、デキュー処理の停止後、最初に処理待ちキュー１６８に保持（エンキュー）されたメッセージを確認し、処理対象とする構成を説明した。本実施形態では、デキュー処理の停止後、最後に処理待ちキュー１６８に保持（エンキュー）されたメッセージを確認し、処理対象とする構成を説明する。
【００５８】
ステップＳ８０１において、削除処理部１６７は、処理待ちキュー１６８（キュー保持部）に保持されているメッセージのうち、デキュー処理の停止後、最後に処理待ちキュー１６８に保持（エンキュー）されたメッセージを確認する。
【００５９】
カレント情報の一例を図６に示す。メッセージの全体の集合６０１は、例えば画面遷移や画面の状態に関係するメッセージにより分類をした例を示している。メッセージの全体の集合６０１は、部分集合６１a、６２ｂ、６３を含んでいる。部分集合６１aには、画面Ａ６１１の表示状態に関するメッセージと画面Ａの操作６１２〜６１５に関するメッセージが含まれている。また、部分集合６２ｂには画面Ｂ６２１の表示状態に関するメッセージと画面Ｂの操作６２２〜６２５に関するメッセージが含まれている。さらに、部分集合６２ｂには、画面Ｂの子画面６２５の表示状態に関するメッセージと画面Ｂの子画面の操作６２６〜６２７に関するメッセージが含まれている。また、部分集合６３には、情報通知１、２、３に関するメッセージ６３１〜６３３が、それぞれ上位属性を有するメッセージとして含まれている。
【００６０】
例えば、最後に処理待ちキュー１６８に保持（エンキュー）されたメッセージが画面Ａの操作６１２に関するメッセージである場合、メッセージのカレント集合（部分集合）は、画面Ａ６１１の表示状態を上位属性とする部分集合６３ａとなる。
【００６１】
ステップＳ８０２において、削除処理部１６７は処理対象のメッセージを決定する。本実施形態では、デキュー処理の停止後、処理待ちキュー１６８に最後に保持（エンキュー）されたメッセージから順に処理対象としていく。最初に処理対象とするのは、処理待ちキュー１６８に保持されているメッセージの中で最も新しいものが処理対象となり、その後順に古いものを処理対象としていく。
【００６２】
ステップＳ８０３の処理は、ステップＳ７０３の処理と同様である。ここで、上位属性を有するメッセージと判定された場合はステップＳ８０５へ処理を進める。
【００６３】
ステップＳ８０５において、削除処理部１６７は上位属性を有するメッセージの部分集合を処理対象のカレント集合とする。すなわち、削除処理部１６７は、通信が切断状態と判定された後において処理待ちキュー１６８に最後に保持された情報通知（メッセージ）が、上位属性を有する情報通知である場合、当該上位属性を有する情報通知と、当該上位属性を有する情報通知に関連付けられた情報通知（関連メッセージ）とにより構成される情報通知の集合を特定する。
【００６４】
削除処理部１６７はカレント集合の情報を処理用の一時メモリに保存する。これにより以降の処理でのステップＳ８０４で情報比較をして、比較結果に基づいて判定することが可能となる。例えば、上位属性を有するメッセージが、画面Ａ６１１の表示状態に関するメッセージである場合、カレント集合の情報には、画面Ａ６１１の表示状態に関するメッセージと、画面Ａの操作６１２〜６１５に関するメッセージが含まれ、これの情報はカレント集合の情報として一時メモリに保存される。
【００６５】
一方、ステップＳ８０４の判定処理で、上位属性を有するメッセージでないと判定された場合、削除処理部１６７はステップＳ８０４に処理を進める。
【００６６】
そして、ステップＳ８０４において、削除処理部１６７は、処理対象のメッセージが、カレント集合（部分集合）の関連メッセージ、すなわち、上位属性を有するメッセージ（主メッセージ）に関連付けられた関連メッセージであるか否かを判定する。例えば、主メッセージが画面Ａ６１１の表示状態である場合、処理対象のメッセージが、これに従属する関連メッセージ（画面Ａの操作６１２〜６１５に関するメッセージ）であるか否かを判定する。削除処理部１６７は、カレント集合の情報を処理用の一時メモリに保存されている情報と比較して、処理対象となるメッセージ（カレント情報）が処理用の一時メモリに保存されていない場合は、カレント集合（部分集合）の関連メッセージではないと判定する。
【００６７】
カレント集合（部分集合）の関連メッセージである場合（Ｓ８０４−Ｙｅｓ）、処理はステップＳ８０７に進められる。一方、ステップＳ８０４の判定で、カレント集合（部分集合）の関連メッセージでない場合（Ｓ８０４−Ｎｏ）、処理はステップＳ８０６に進められる。ステップＳ８０６では、削除処理部１６７は、情報通知の集合（カレント集合）に含まれない情報通知の削除処理を行う。すなわち、カレント集合（部分集合）の関連メッセージでないメッセージの削除を行い、処理をステップＳ８０７に進める。
【００６８】
ステップＳ８０７では、削除処理部１６７は、処理待ちキュー１６８に保持されている次のメッセージの有無を判定する。ステップＳ８０７の判定処理で、削除処理部１６７は、次のメッセージが有ると判定した場合（Ｓ８０７−Ｙｅｓ）、処理はステップＳ８０２に戻され、同様の処理が繰り返される。また、ステップＳ８０７の判定処理で、処理待ちキュー１６８に次のメッセージが保持されていないと判定された場合（Ｓ８０７−Ｎｏ）、本処理は終了する。
【００６９】
［第３の実施形態］
次に第３の実施形態を説明する。第１の実施形態では、第１の制御アプリケーション１３側に接続監視部を設ける構成を説明したが、この構成に限られず、例えば、第二の制御アプリケーション１４側にも接続監視機能を設けることも可能である。
【００７０】
第二の制御アプリケーション１４は、第一の制御アプリケーションとの間の通信の接続状態を監視する接続監視部を備え、接続監視部により接続状態が切断状態と判定された場合、第二の制御アプリケーション１４により提供されるＧＵＩに、被検者情報が取得できないことを、「ＵｓｅｒＵｎｋｎｏｗｎ」として表示させたり、非接続状態であることを示す報知情報を表示させることが可能である。例えば、第二の制御アプリケーション１４側の接続監視部の監視結果に基づいて、制御部１４２が携帯端末１４０におけるＧＵＩの表示制御を行い表示させることが可能である。もしくは、第一及び第二の制御アプリケーション間で通信していた情報（例えば、検査開始から検査終了までの間の操作に対するメッセージの部分集合や、１つの撮影単位の操作に対するメッセージの部分集合）に関する通信を終了する通知を行うことも可能である。
【００７１】
［第４の実施形態］
次に第４の実施形態を説明する。本実施形態では、メッセージの部分集合ごとに優先度を設定する構成について説明する。削除処理部１６７は、情報通知（メッセージ）の集合に対して、優先的に処理する順番を定めた優先度を設定し、設定した優先度に基づいて情報通知の順序を入れ替えることが可能である。
【００７２】
例えば、メッセージの全体の集合６０１に含まれる、部分集合６１a、６２ｂ、６３に対して、優先的に処理する順番を定めた優先度を設定することが可能である。削除処理部１６７は優先度に基づいてキューの処理順序を入れ替えることが可能である。例えば、患者情報に関するメッセージキューを優先的に処理するように順序を入れ替えたり、部分集合６３のように、関連メッセージを有さず、それぞれ上位属性を有するメッセージで構成された独立した通知（情報通知１、２、３に関するメッセージ６３１〜６３３）を優先的に処理するように順序を入れ替えることも可能である。
【００７３】
上記の各実施形態によれば、複数のアプリケーションが連携して処理を実行するシステムにおいて、アプリケーション間の接続が切断状態になり、その後再接続となった場合であっても、アプリケーション間で生じ得る情報の不整合を解消することが可能になる。
【００７４】
本発明によれば、無線有線のネットワークを介して双方の異なるアプリケーションが同時に連携して動作するシステムにおいてネットワークの接続切断問題を解決し、仮に接続が切断された場合であっても、再接続後に双方の状態を最新の状態に復帰するように情報通知をすることができる。また、最新状態への復帰を効率よくするため応答性の改善する効果もある。
【符号の説明】
【００７５】
１１：放射線発生装置、１２：放射線検出器、１３：第一の制御アプリケーション、１４：第二の制御アプリケーション、１５：撮影制御部、１６：通信制御部、１６０：制御部、１６１：接続監視部、１６２：メッセージ処理部、１６３：エンキュー処理部、１６４：キュー管理部、１６５：デキュー管理部、１６６：メッセージ通信部、１６７：削除処理部
【図１】
2020146168.tif 000003
【図２】
2020146168.tif 000004
【図３】
2020146168.tif 000005
【図４】
2020146168.tif 000006
【図５】
2020146168.tif 000007
【図６】
2020146168.tif 000008
【図７】
2020146168.tif 000009
【図８】
2020146168.tif 000010