(57)【要約】【課題】複数のデータ処理モジュールがパイプライン形態に接続されている場合に、処理中断要求等に対する応答性の向上を図る。【解決手段】パイプライン形態に接続されて各々が所定のデータ処理を実行するとともに、当該データ処理を処理対象となるデータの所定処理単位毎に行う複数のデータ処理手段１０ａ〜１０ｃと、各データ処理手段１０ａ〜１０ｃの間に少なくとも一つが配されて、データの受け渡しに関する問い合わせを前記所定処理単位毎に行うとともに、当該問い合わせに対する応答指示に従いつつ前記データの受け渡しを前記所定処理単位毎に行うコールバック手段２０と、前記コールバック手段２０からの問い合わせを受け付けるとともに、当該問い合わせに対する応答指示を前記コールバック手段２０に与える制御手段３０とを備えて、データ処理装置を構成する。【選択図】図１
2006259970.tif 000002
【特許請求の範囲】
【請求項１】
パイプライン形態に接続されて各々が所定のデータ処理を実行するとともに、当該データ処理を処理対象となるデータの所定処理単位毎に行う複数のデータ処理手段と、
前記複数のデータ処理手段の間に少なくとも一つが配されて、当該データ処理手段の間でのデータの受け渡しに関する問い合わせを前記所定処理単位毎に行うとともに、当該問い合わせに対する応答指示に従いつつ前記データの受け渡しを前記所定処理単位毎に行うコールバック手段と、
前記コールバック手段からの問い合わせを受け付けるとともに、当該問い合わせに対する応答指示を前記コールバック手段に与える制御手段と
を備えることを特徴とするデータ処理装置。
【請求項２】
前記コールバック手段は、データの受け渡しに関する問い合わせとして、当該受け渡しの可否を前記制御手段に問い合わせ、当該問い合わせに対する応答指示が受け渡し可であれば、当該応答指示に係る所定処理単位についてデータの受け渡しを行い、当該問い合わせに対する応答指示が受け渡し不可であれば、当該応答指示に係る所定処理単位についてデータの受け渡しを中止するものである
ことを特徴とする請求項１記載のデータ処理装置。
【請求項３】
前記コールバック手段は、前記データの受け渡しを中止する旨の情報を、前記データ処理装置の全体または前記データ処理装置を含んで構築されたシステム全体を管理しているシステム管理モジュールへ通知するものである
ことを特徴とする請求項１または２記載のデータ処理装置。
【請求項４】
前記コールバック手段は、データの受け渡しに関する問い合わせとして、当該受け渡しのモニタリング要否を前記制御手段に問い合わせ、当該問い合わせに対する応答指示がモニタリング要であれば、前記データの受け渡しを前記所定処理単位毎に行う都度、受け渡しを行った前記所定処理単位の数を計数して出力するものである
ことを特徴とする請求項１、２または３記載のデータ処理装置。
【請求項５】
コンピュータを、
パイプライン形態に接続されて各々が所定のデータ処理を実行するとともに、当該データ処理を処理対象となるデータの所定処理単位毎に行う複数のデータ処理手段と、
前記複数のデータ処理手段の間に少なくとも一つが配されて、当該データ処理手段の間でのデータの受け渡しに関する問い合わせを前記所定処理単位毎に行うとともに、当該問い合わせに対する応答指示に従いつつ前記データの受け渡しを前記所定処理単位毎に行うコールバック手段と、
前記コールバック手段からの問い合わせを受け付けるとともに、当該問い合わせに対する応答指示を前記コールバック手段に与える制御手段
として機能させることを特徴とするデータ処理プログラム。
【請求項６】
前記コンピュータを、
当該コンピュータの全体または当該コンピュータを含んで構築されたシステム全体を管理するとともに、前記コールバック手段からの前記データの受け渡しを中止する旨の情報を受け付けるシステム管理モジュール
として機能させることを特徴とする請求項５記載のデータ処理プログラム。
【請求項７】
パイプライン形態に接続された複数のデータ処理手段を備えたデータ処理装置にて用いられるデータ処理方法であって、
前記データ処理手段の各々が所定のデータ処理を実行するとともに、当該データ処理を処理対象となるデータの所定処理単位毎に行うデータ処理ステップと、
前記複数のデータ処理手段の間でのデータの受け渡しに関する問い合わせを前記所定処理単位毎に外部制御部に対して行う問い合わせステップと、
前記問い合わせに対する応答指示に従いつつ前記複数のデータ処理手段の間でのデータの受け渡しを前記所定処理単位毎に行うデータ受け渡しステップと
を備えることを特徴とするデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パイプライン形態に接続された複数のデータ処理モジュール（データ処理手段）を用いて処理対象となるデータに対するデータ処理を行うデータ処理装置、データ処理プログラムおよびデータ処理方法に関するものである。
【背景技術】
【０００２】
近年、複数のデータ処理モジュールがパイプライン形態に接続されてなるデータ処理装置が広く用いられている。パイプライン形態の接続とは、例えば図５に示すように、複数のデータ処理モジュールＡ１〜Ａ３が直列に接続されているとともに、あるデータ処理モジュールの出力が次のデータ処理モジュールの入力となるようなデータフローモデルに基づいて接続されていることをいう。例えば、画像データを処理するデータ処理装置であれば、画像読み取りモジュール、画像回転モジュール、画像先鋭化モジュール、画像書き込みモジュール等をパイプライン形態に接続する、といった具合である（例えば、特許文献１）。このように、複数のデータ処理モジュールをパイプライン形態に接続して用いれば、高度な専用化されたモジュールを個別に用意することなく、原始的なモジュールを幾つか用意するだけで、開発コストを上げることなく汎用のデータ処理機能を提供できるという利点がある。
【０００３】
【特許文献１】特開平８−２７２９８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、従来のデータ処理装置では、複数のデータ処理モジュールがパイプライン形態に接続されていると、そのデータ処理装置での処理全体を中断したい場合であっても、あるデータ処理モジュールでのデータ処理の開始後は、処理対象であるデータの全てについて、そのデータ処理が終了するまで処理全体の中断を行うことができない。そのため、各データ処理モジュールの中に幾何変換処理や解析処理等のように処理負荷の重いものがあると、そのデータ処理モジュールでのデータ処理に多くの時間を要してしまうため、処理中断要求に対する応答性が悪いものとなってしまう。
【０００５】
例えば、図５に示した画像データを処理するデータ処理装置において、パイプライン形態に接続された各データ処理モジュールＡ１〜Ａ３の中で、そのうちの一つのデータ処理モジュールＡ２が画像データの回転処理を行うものであると、その画像回転モジュールＡ２では事前に１面分の画像データの全てを当該モジュールＡ２内のローカルメモリに読み込む処理を行い、しかもそのデータ読み込みは後段モジュールＡ３からの実効命令の開始前に行われるため、その画像回転モジュールＡ２でのローカルメモリ内へのデータ読み込み処理中は処理を中断することができない。さらに詳しくは、画像回転モジュールＡ２の制御部は、後段モジュールＡ３の制御部からのデータ要求があると、画像回転モジュールＡ２内の入力バッファに１面分の画像データを準備するため、前段モジュールＡ１の制御部に何回かのデータ要求を発行してその１面分の画像データを取得するが、この間に外部から処理を中断させようとしても、画像回転モジュールＡ２内の制御部はその中断情報を取得できないため、前段モジュールＡ１の出力バッファから画像回転モジュールＡ２内の入力バッファへのデータ入力処理を中断することはできない。
【０００６】
そこで、本発明は、複数のデータ処理モジュールがパイプライン形態に接続されている場合であっても、処理中断要求等に対する応答性に優れたデータ処理装置、データ処理プログラムおよびデータ処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、上記目的を達成するために案出されたデータ処理装置で、パイプライン形態に接続されて各々が所定のデータ処理を実行するとともに、当該データ処理を処理対象となるデータの所定処理単位毎に行う複数のデータ処理手段と、前記複数のデータ処理手段の間に少なくとも一つが配されて、当該データ処理手段の間でのデータの受け渡しに関する問い合わせを前記所定処理単位毎に行うとともに、当該問い合わせに対する応答指示に従いつつ前記データの受け渡しを前記所定処理単位毎に行うコールバック手段と、前記コールバック手段からの問い合わせを受け付けるとともに、当該問い合わせに対する応答指示を前記コールバック手段に与える制御手段とを備えることを特徴とするものである。
【０００８】
また、本発明は、上記目的を達成するために案出されたデータ処理プログラムで、コンピュータを、パイプライン形態に接続されて各々が所定のデータ処理を実行するとともに、当該データ処理を処理対象となるデータの所定処理単位毎に行う複数のデータ処理手段と、前記複数のデータ処理手段の間に少なくとも一つが配されて、当該データ処理手段の間でのデータの受け渡しに関する問い合わせを前記所定処理単位毎に行うとともに、当該問い合わせに対する応答指示に従いつつ前記データの受け渡しを前記所定処理単位毎に行うコールバック手段と、前記コールバック手段からの問い合わせを受け付けるとともに、当該問い合わせに対する応答指示を前記コールバック手段に与える制御手段として機能させることを特徴とするものである。
【０００９】
また、本発明は、上記目的を達成するために案出されたデータ処理方法で、パイプライン形態に接続された複数のデータ処理手段を備えたデータ処理装置にて用いられるデータ処理方法であって、前記データ処理手段の各々が所定のデータ処理を実行するとともに、当該データ処理を処理対象となるデータの所定処理単位毎に行うデータ処理ステップと、前記複数のデータ処理手段の間でのデータの受け渡しに関する問い合わせを前記所定処理単位毎に外部制御部に対して行う問い合わせステップと、前記問い合わせに対する応答指示に従いつつ前記複数のデータ処理手段の間でのデータの受け渡しを前記所定処理単位毎に行うデータ受け渡しステップとを備えることを特徴とする。
【００１０】
上記構成のデータ処理装置、データ処理プログラムおよびデータ処理方法では、各データ処理手段が処理対象となるデータの所定処理単位毎（例えば、画像データであればスキャンライン単位毎）にデータ処理を実行するとともに、各データ処理手段の間に少なくとも一つコールバック手段が配されており、そのコールバック手段が所定処理単位毎にデータの受け渡しを行う。その際に、コールバック手段は、データの受け渡しに関する問い合わせを制御手段に対して所定処理単位毎に行い、その制御手段からの応答指示に従いつつデータの受け渡しを行う。したがって、例えば、あるデータについて、そのデータを構成する所定処理単位の全てについて受け渡しが終了していなくても、制御手段から処理を中断する旨の応答指示があると、コールバック手段は、その応答指示以降のデータの受け渡しを行わない。
【発明の効果】
【００１１】
以上のように、本発明のデータ処理装置、データ処理プログラムおよびデータ処理方法では、コールバック手段が処理対象となるデータの所定処理単位毎にそのデータ受け渡しに関する問い合わせを行い、その問い合わせに対する応答指示に従いつつデータの受け渡しを行うので、制御手段からの応答指示を与えることにより、そのデータの全てについて処理が終了しなくても、その途中で処理を中断させることが可能となる。つまり、各データ処理手段がパイプライン形態に接続されている場合に、あるデータ処理手段でのデータ処理の開始後に、そのデータ処理が処理対象となるデータの全てについて終了していなくとも、当該データの全てについてデータ処理が終了するのを待つことなく、処理全体の中断を行うことができる。したがって、各データ処理手段がパイプライン形態に接続されている場合であっても、処理中断要求等に対する応答性に優れたものとなる。
【発明を実施するための最良の形態】
【００１２】
以下、図面に基づき本発明に係るデータ処理装置、データ処理プログラムおよびデータ処理方法について説明する。ここでは、複写機やプリンタ装置、これらの機能を統合した複合機、または画像処理機能を有したコンピュータ装置等のように、画像データを処理するデータ処理装置およびデータ処理プログラムに本発明を適用した場合を例に挙げて説明する。
【００１３】
図１は、本発明に係るデータ処理装置の概略構成例を示すブロック図である。図例のデータ処理装置は、パイプライン形態に接続されて用いられる複数のデータ処理モジュール１０ａ〜１０ｃと、データ処理モジュール１０ａ，１０ｂの間に配されるコールバックモジュール２０と、そのコールバックモジュール２０と接続する外部制御部３０と、を備えている。
【００１４】
データ処理モジュール１０ａ〜１０ｃは、各々が所定のデータ処理を実行するものである。所定のデータ処理としては、例えば、画像データの読み取り処理、画像データの色調整処理、画像データの解像度変換処理、画像データの拡縮処理、画像データの回転処理、画像データの先鋭化処理、画像データの書き込み（出力）処理等が挙げられる。ただし、これらのデータ処理は例示に過ぎず、これらに限定されるものでない。
【００１５】
これらのデータ処理を実行するために、データ処理モジュール１０ａ〜１０ｃは、各々が制御部１１ａ〜１１ｃを有している。そして、各制御部１１ａ〜１１ｃは、当該データ処理を、処理対象となる画像データの所定処理単位毎に行うようになっている。所定処理単位は、例えば画像データのスキャンライン単位である場合が考えられる。ただし、必ずしもスキャンライン単位である必要はなく、例えば２〜３スキャンラインからなるバンド単位であっても、所定画素数×所定画素数のブロック単位であってもよい。
【００１６】
さらに、各制御部１１ａ〜１１ｃは、各々がデータ処理を実行するのにあたり、処理対象となる画像データの所定処理単位毎に、パイプライン接続における後段側から前段側に対してデータ要求を発行するとともに、そのデータ要求を受け付けると前段側で所定処理単位の画像データに対するデータ処理を実行し、その処理後の画像データを後段側へ受け渡すようになっている。ただし、各制御部１１ａ〜１１ｃは、後段側からのデータ要求に応じてデータ処理を実行するのではなく、前段側から処理後の画像データを受け取るとその画像データに対するデータ処理を実行するものであってもよい。
【００１７】
また、データ処理モジュール１０ａ〜１０ｃは、パイプライン形態に接続されて用いられることから、各々が入力バッファ１２ａ〜１２ｃおよび出力バッファ１３ａ〜１３ｃを有している。そして、これらの入力バッファ１２ａ〜１２ｃおよび出力バッファ１３ａ〜１３ｃが、あるデータ処理モジュールの出力バッファが次のデータ処理モジュールの入力バッファに繋がるようなデータフローモデルに基づいて接続されている。なお、これら入力バッファ１２ａ〜１２ｃおよび出力バッファ１３ａ〜１３ｃの間での画像データの受け渡しも、処理対象となる画像データの所定処理単位毎に行われるものとする。
【００１８】
コールバックモジュール２０は、データ処理モジュール１０ａ，１０ｂの間において、後段側のデータ処理モジュール１０ｂからのデータ要求があると、これを制御部２１で受け取るとともに、そのデータ要求をトリガーとして、データの受け渡しに関する問い合わせを、制御部２１が外部制御部３０に対して行うものである。データの受け渡しに関する問い合わせとしては、当該受け渡しの可否についての問い合わせや、当該受け渡しのモニタリング要否についての問い合わせ等が挙げられる。コールバックモジュール２０では、これらのうちの少なくとも一つを、外部制御部３０に問い合わせるものとする。また、その問い合わせは、後段側のデータ処理モジュール１０ｂからのデータ要求をトリガーとするので、そのデータ要求がある度に、すなわち処理対象となる画像データの所定処理単位毎に行うようになっている。
【００１９】
また、コールバックモジュール２０は、外部制御部３０への問い合わせに対する当該外部制御部３０からの応答指示に従いつつ、処理対象となる画像データの受け渡しを、その画像データの所定処理単位毎に行うようになっている。例えば、受け渡しの可否についての問い合わせを行った場合に、問い合わせに対する応答指示が受け渡し可であれば、その応答指示に係る所定処理単位について画像データの受け渡しを行い、問い合わせに対する応答指示が受け渡し不可であれば、その応答指示に係る所定処理単位についてデータの受け渡しを中止する、といった具合である。また、例えば、モニタリング要否についての問い合わせを行った場合に、問い合わせに対する応答指示がモニタリング要であれば、画像データの受け渡しを所定処理単位毎に行う都度、受け渡しを行った所定処理単位の数を計数して出力する、といった具合である。
【００２０】
外部制御部３０は、コールバックモジュール２０からの問い合わせを受け付けるとともに、その問い合わせに対する応答指示をコールバックモジュール２０に与えるものである。応答指示は、外部からの入力に基づいて、その指示内容を特定すればよい。外部からの入力としては、例えばユーザインタフェース（以下「ＵＩ」と略す）からの情報入力が考えられる。また、その他にも、データ処理装置内に設けられている異常検出手段（例えば、紙詰まり検出センサ）での検出結果を用いることも考えられる。
【００２１】
以上に説明したデータ処理モジュール１０ａ〜１０ｃ、コールバックモジュール２０および外部制御部３０は、いずれも、コンピュータとしての機能に所定プログラムを実行させることによって実現することが考えられる。例えば、コールバックモジュール２０であれば、コールバック関数を実行させることによって実現するといった具合である。その場合に、所定プログラムは、コンピュータとしての機能を有したデータ処理装置内に予めインストールしておくことが考えられるが、予めインストールされているのではなく、コンピュータ読み取り可能な記憶媒体に格納されて提供されるものであっても、または有線若しくは無線による通信手段を介して配信されるものであってもよい。つまり、上述した構成のデータ処理装置は、コンピュータをデータ処理装置として機能させるデータ処理プログラムによっても実現可能である。
【００２２】
次に、以上のように構成されたデータ処理装置（教材処理プログラムによっても実現される場合を含む）における処理動作例、すなわち本発明に係るデータ処理方法について説明する。図２〜４は、本発明に係るデータ処理装置の処理動作例を示すデータフロー図である。
【００２３】
〔動作継続の場合〕
例えば、データ処理モジュール１０ｂが画像データの回転処理を行うものである場合、データ処理モジュール１０ｂの制御部１１ｂは、当該回転処理を行うのにあたり、図２に示すように、所定処理単位である１スキャンライン分の画像データのデータ要求を、そのデータ処理モジュール１０ｂの前段に位置するコールバックモジュール２０の制御部２１に要求する（ステップ１０１、以下ステップを「Ｓ」と略す）。データ処理モジュール１０ｂの制御部１１ｂからのデータ要求があると、コールバックモジュール２０の制御部２１は、そのデータ要求をトリガーに、外部制御部３０に対してデータの受け渡しに関する問い合わせを行って（Ｓ１０２）、制御主体を制御部２１から外部制御部３０へ移行させる。そして、外部制御部３０では、コールバックモジュール２０からの問い合わせを受け付けると、その問い合わせに対する応答指示をコールバックモジュール２０に与える（Ｓ１０３）
【００２４】
このとき、外部制御部３０は、外部からの入力に基づいて、その指示内容を特定する。具体的には、ＵＩから処理を中断させる旨の情報入力がなく、また異常検出手段による異常検出もなければ、外部制御部３０は、処理を継続して行うべきと判断して、処理継続信号をコールバックモジュール２０に対して出力し、その処理継続信号を問い合わせに対する応答指示とする（Ｓ１０４）。
【００２５】
そして、外部制御部３０から処理継続信号を取得すると、コールバックモジュール２０の制御部２１は、処理を継続して行うべく、データ処理モジュール１０ｂの制御部１１ｂからのデータ要求を、コールバックモジュール２０の前段に位置するデータ処理モジュール１０ａの制御部１１ａに受け渡す。すなわち、コールバックモジュール２０の制御部２１は、所定処理単位である１スキャンライン分の画像データのデータ要求を、データ処理モジュール１０ａの制御部１１ａに要求する（Ｓ１０５）。
【００２６】
コールバックモジュール２０の制御部２１からのデータ要求を受け取ると、データ処理モジュール１０ａは、要求された１スキャンライン分の画像データを、そのデータ処理モジュール１０ａの後段に位置するコールバックモジュール２０に転送する（Ｓ１０６）。さらに、コールバックモジュール２０は、データ処理モジュール１０ａから転送された１スキャンライン分の画像データを、そのコールバックモジュール２０の後段に位置するデータ処理モジュール１０ｂに転送する（Ｓ１０７）。このようにして１スキャンライン分の画像データを取得した後は、データ処理モジュール１０ｂの制御部１１ｂは、その１スキャンライン分の画像データに対して回転処理を実行する。
【００２７】
データ処理モジュール１０ａ〜１０ｃ、コールバックモジュール２０および外部制御部３０は、以上のような一連の処理を、画像データの１面分（例えば画像データ出力用紙の１ページ分）について終了するまで、繰り返して行うのである。
【００２８】
〔動作中断の場合〕
ところで、上述した一連の処理において、コールバックモジュール２０が制御主体を制御部２１から外部制御部３０へ移行させた際に、その外部制御部３０に対しＵＩから処理を中断させる旨の情報入力がされているか、あるいは異常検出手段による異常検出があった場合には、外部制御部３０は、処理を中断すべきと判断し、図３に示すように、処理中断信号をコールバックモジュール２０に対して出力し、その処理中断信号を問い合わせに対する応答指示とする（Ｓ２０１）。
【００２９】
そして、外部制御部３０から処理中断信号を取得すると、コールバックモジュール２０の制御部２１は、その処理を中断すべく、データ処理モジュール１０ｂの制御部１１ｂからのデータ要求をデータ処理モジュール１０ａの制御部１１ａに受け渡すことなく、そのデータ処理モジュール１０ｂの制御部１１ｂに対してデータ転送中断の信号を送出する（Ｓ２０２）。このデータ転送中断の信号を受け取ると、データ処理モジュール１０ｂの制御部１１ｂは、それ以降、処理途中である画像データに対する回転処理を実行せずに、その画像データについての処理を終了する。つまり、画像データの１面分について処理が終了していなくても、その処理が中断されることになる。
【００３０】
また、外部制御部３０から処理中断信号を取得すると、コールバックモジュール２０の制御部２１は、データ転送中断の信号を、データ処理モジュール１０ｂの制御部１１ｂに対してではなく、図４に示すように、データ処理装置の全体またはデータ処理装置を含んで構築されたシステム全体を管理しているシステム管理モジュール４０へ送信するものであってもよい（Ｓ３０１）。システム管理モジュール４０へデータ転送中断の信号を送信する場合には、その信号送信を、例外通知機能により実現することが考えられる。例外通知機能とは、何らかの理由で「処理が続行できない状況（例外状態）」と判断した場合に、それを上位に伝えるために設けられた機能であり、コンピュータ上で動作する一般的なプログラムにおいても広く用いられている機能である。
【００３１】
このように、データ転送中断の信号をシステム管理モジュール４０へ送信すれば、データ処理装置を構成する各データ処理モジュール１０ａ〜１０ｃにおける処理のみならず、そのデータ処理装置の全体またはデータ処理装置を含んで構築されたシステム全体における処理をも中断し得るため、特に異常検出手段による異常検出に応じて処理を中断する場合に適用して非常に有効なものとなる。
【００３２】
〔モニタリング動作の場合〕
また、上述した一連の処理において、コールバックモジュール２０が制御主体を制御部２１から外部制御部３０へ移行させた際に、その外部制御部３０に対しＵＩから処理を中断させる旨の情報入力はないが、データ受け渡しのモニタリングが必要である旨の情報入力がされている場合には、外部制御部３０は、処理を継続して行いつつ、その処理の進捗状況を認識して出力すべきと判断して、処理継続信号およびモニタリング実行信号をコールバックモジュール２０に対して出力し、これらの信号を問い合わせに対する応答指示とする。
【００３３】
そして、コールバックモジュール２０の制御部２１は、処理継続信号に応じて、処理を継続して行うべく、データ処理モジュール１０ｂとデータ処理モジュール１０ａとの間で、データ要求の受け渡しおよび当該データ要求に係る１スキャンライン分の画像データの受け渡しを行う。さらに、コールバックモジュール２０の制御部２１は、１スキャンライン分の画像データの受け渡しを都度、制御部２１が有しているカウンタまたは制御部２１がアクセスし得るカウンタの値をインクリメントし、これによりデータ受け渡しを行ったスキャンラインの数を計数して出力する。
【００３４】
計数結果の出力は、例えばＵＩにおけるディスプレイ上に、例えばプログレスバーのようなＧＵＩ（Graphical User Interface）画像を表示して行うことが考えられる。このようなスキャンライン数の計数結果に基づくＧＵＩ画像を表示出力すれば、そのＧＵＩ画像を参照することで、データ処理装置での画像データに対する処理の進捗状況を、容易かつ的確に把握し得るようになるので、そのデータ処理装置のユーザにとっては非常に便利なものとなる。
【００３５】
なお、モニタリングが必要である旨の情報入力がされていない場合（不要である旨の情報が入力されている場合を含む）には、データ受け渡しを行ったスキャンライン数を計数およびその計数結果の出力は行わない。
【００３６】
以上に説明したように、本実施形態におけるデータ処理装置、データ処理プログラムおよびデータ処理方法では、各データ処理モジュール１０ａ〜１０ｃが画像データの１スキャンライン単位毎にデータ処理を実行するとともに、データ処理モジュール１０ａ，１０ｂの間にコールバックモジュール２０が配されており、そのコールバックモジュール２０が１スキャンライン単位毎に画像データの受け渡しを行うようになっている。そして、その際に、コールバックモジュール２０は、画像データの受け渡しに関する問い合わせを外部制御部３０に対して１スキャンライン単位毎に行い、その外部制御部３０からの応答指示に従いつつ画像データの受け渡しを行うようになっている。つまり、コールバックモジュール２０は、例えば、ある画像データについて、その画像データの１面の全ての受け渡しが終了していなくても、外部制御部３０から処理を中断する旨の応答指示があると、の応答指示以降の画像データの受け渡しを行わない。
【００３７】
したがって、本実施形態におけるデータ処理装置、データ処理プログラムおよびデータ処理方法によれば、コールバックモジュール２０が処理対象となる画像データの１スキャンライン単位毎にその画像データ受け渡しに関する問い合わせを行い、その問い合わせに対する応答指示に従いつつ画像データの受け渡しを行うので、外部制御部３０からの応答指示を与えることにより、その画像データの１面の全てについて処理が終了しなくても、その途中で処理を中断させることが可能となる。つまり、各データ処理モジュール１０ａ〜１０ｃがパイプライン形態に接続されている場合に、あるデータ処理モジュールでのデータ処理の開始後に、そのデータ処理が処理対象となるデータの全てについて終了していなくとも、当該データの全てについてデータ処理が終了するのを待つことなく、処理全体の中断を行うことができる。そのため、各データ処理モジュール１０ａ〜１０ｃがパイプライン形態に接続されている場合であっても、処理中断要求等に対する応答性に優れたものとなるのである。
【００３８】
なお、本実施形態では、本発明の好適な実施具体例を説明したが、本発明はその内容に限定されるものではなく、その要旨を逸脱しない範囲で適宜変更が可能である。
【００３９】
例えば、本実施形態では、データ処理モジュール１０ａ，１０ｂの間に一つのコールバックモジュール２０が配されている場合を例に挙げたが、コールバックモジュール２０は、各データ処理モジュール１０ａ〜１０ｃのいずれかの間に少なくとも一つ設けられていればよい。したがって、全ての間にそれぞれ配することも考えられる。ただし、数多く設けると、装置構成の複雑化を招き得るため、処理負荷の重いデータ処理を行うデータ処理モジュールに対応して、その前段または後段に配することが望ましい。
【００４０】
また、本実施形態では、データの受け渡しに関する問い合わせとして、当該受け渡しの可否と当該受け渡しのモニタリング要否との両方を外部制御部３０に問い合わせる場合を例に挙げたが、これらのいずれか一方のみを問い合わせるようにしても構わない。さらには、受け渡しの可否の問い合わせに対する応答指示の指示内容特定を、ＵＩからの情報入力と異常検出手段での検出結果との両方に基づいて行う場合を例に挙げたが、これらのいずれか一方のみに基づいて行うようにしても構わない。
【００４１】
さらに、本実施形態では、画像データを処理するデータ処理装置、データ処理プログラムおよびデータ処理方法に本発明を適用した場合を例に挙げたが、パイプライン形態に接続された複数のデータ処理モジュール（データ処理手段）を用いてデータ処理を行うものであれば、他のデータに対するデータ処理を行うものであっても、全く同様に適用することが可能である。
【図面の簡単な説明】
【００４２】
【図１】本発明に係るデータ処理装置の概略構成例を示すブロック図である。
【図２】本発明に係るデータ処理装置の処理動作例を示すデータフロー図（その１）であり、動作継続の場合の動作の例を示す図である。
【図３】本発明に係るデータ処理装置の処理動作例を示すデータフロー図（その２）であり、動作中断の場合の動作の一例を示す図である。
【図４】本発明に係るデータ処理装置の処理動作例を示すデータフロー図（その３）であり、動作中断の場合の動作の他の例を示す図である。
【図５】従来におけるデータ処理装置の概略構成例を示すブロック図である。
【符号の説明】
【００４３】
１０ａ〜１０ｃ…データ処理モジュール、１１ａ〜１１ｃ…制御部、１２ａ〜１２ｃ…入力バッファ、１３ａ〜１３ｃ…出力バッファ、２０…コールバックモジュール、２１…制御部、３０…外部制御部、４０…システム管理モジュール
【図１】
2006259970.tif 000003
【図２】
2006259970.tif 000004
【図３】
2006259970.tif 000005
【図４】
2006259970.tif 000006
【図５】
2006259970.tif 000007