(57)【要約】【課題】  画像形成装置としての動作を制御するためのアプリケーションプログラムの開発において状態管理の簡潔化を実現でき、開発に要する工数やデバックに要する手間を削減できる画像形成装置を提供すること。【解決手段】    アプリ状態管理手段は、１または複数の設定中状態を含むと共に前記設定中状態ではない状態である非設定中状態を含みそれらの状態を管理する設定中状態管理手段と、前記アプリケーション手段が含む各種状態をそれぞれ管理する１または複数の部分アプリ状態管理手段とを備え、前記設定中状態管理手段は、前記部分アプリ状態管理手段が管理している状態の現在の状態に制限されることなく前記設定中状態及び非設定中状態を管理する一方、前記部分アプリ状態管理手段が取り得る状態が前記設定中状態管理手段の現在の状態に応じて制限されることを特徴とする。【選択図】    図２
2006018360.tif 000002
【特許請求の範囲】
【請求項１】
画像形成装置としての動作を制御するアプリケーション手段を備えると共にそのアプリケーション手段は自身が含む各種状態を管理するアプリ状態管理手段を備えている画像形成装置において、
前記アプリ状態管理手段は、
装置動作に関連する設定情報を設定中の状態である設定中状態を設定対象の設定情報の種別に応じて１または複数含むと共に前記設定中状態ではない状態である非設定中状態を含みそれらの状態を管理する設定中状態管理手段と、
前記アプリケーション手段が含む各種状態をそれぞれ管理する１または複数の部分アプリ状態管理手段とを備え、
前記設定中状態管理手段は、前記部分アプリ状態管理手段が管理している状態の現在の状態に制限されることなく前記設定中状態及び非設定中状態を管理する一方、
前記部分アプリ状態管理手段が取り得る状態が前記設定中状態管理手段の現在の状態に応じて制限されることを特徴とする画像形成装置。
【請求項２】
前記設定中管理手段が管理する前記設定中状態として、ユーザー向けの設定情報についての設定操作を扱うユーザー設定中状態、または／及び、ユーザーに非公開のサービスパーソン向けの設定情報についての設定操作を扱うサービス設定中状態を含むことを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記部分アプリ状態管理手段として、装置が制限無く通常に動作する状態と動作が制限された状態とを管理する動作状態管理手段、１または複数段階の省電力状態を管理する省電力状態管理手段、または／及び、前記アプリケーション手段が操作部からの操作入力に応じた制御が可能状態か不可状態かを管理する操作部制御状態管理手段を含むことを特徴とする請求項１または２のいずれかに記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置に関し、特に、画像形成装置のアプリケーションプログラムにおける、アプリケーションプログラムの状態管理に関するものである。
【背景技術】
【０００２】
画像形成装置が備える、画像形成装置としての動作を制御するアプリケーション手段、具体的には、ＣＰＵ（中央演算処理装置）により、ＲＡＭを作業領域としてとして実行されるアプリケーションプログラムは、内部に様々な状態を持っていて、状況に応じてそれら各状態を制御することにより、画像形成装置が画像形成装置として動作するように制御している。
【０００３】
前記アプリケーション手段が内部に備える状態としては、装置動作に関連する設定情報を設定中の状態である設定中状態及び当該設定中状態ではない状態である非設定中状態を内部状態として含む「設定中状態」、装置が制限無く通常に動作する状態と動作が制限された状態とを内部状態とする「動作状態」、１または複数段階の省電力状態を内部状態とする「省電力状態」、前記アプリケーション手段が操作部からの操作入力に応じた制御が可能状態か不可状態かを内部状態とする「操作部制御状態」等の様々なものがあり、それらの状態は、各状態を分担管理するための各状態管理手段により個別に管理される。
【０００４】
そして、前記アプリケーション手段が内部に備える各状態（アプリ状態）は互いに無関係に存在しているのではなく互いに関連を持っているため、前記各状態管理手段にそれぞれ相当する各部分アプリケーションプログラムの作成において、各部分アプリケーションプログラムがそれぞれ管理を担う各状態の相互関係（許される組み合わせ）を正確に把握する必要がある。
【０００５】
しかし、その相互関係は複雑になりがちであり、アプリケーション開発が非効率的になるばかりでなく、状態の相互関係の把握ミスにより特定のアプリ状態と別のアプリ状態とが、本来許されない状態の組み合わせになってしまって装置動作の障害発生の元になっているという事情があった。
【０００６】
画像形成装置においてアプリケーション開発の効率化を図るための公知技術としては特許文献１を挙げることができる。
【特許文献１】特開２００３−２５６１６１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、上記技術をもってしても、画像形成装置におけるアプリケーションプログラム開発において状態管理の簡潔化を実現することはできないという問題点があった。
【０００８】
本発明は係る事情に鑑みてなされたものであり、画像形成装置としての動作を制御するためのアプリケーションプログラムの開発において状態管理の簡潔化を実現でき、開発に要する工数やデバックに要する手間を削減できる画像形成装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
請求項１に記載の画像形成装置は、画像形成装置としての動作を制御するアプリケーション手段を備えると共にそのアプリケーション手段は自身が含む各種状態を管理するアプリ状態管理手段を備えている画像形成装置において、前記アプリ状態管理手段は、装置動作に関連する設定情報を設定中の状態である設定中状態を設定対象の設定情報の種別に応じて１または複数含むと共に前記設定中状態ではない状態である非設定中状態を含みそれらの状態を管理する設定中状態管理手段と、前記アプリケーション手段が含む各種状態をそれぞれ管理する１または複数の部分アプリ状態管理手段とを備え、前記設定中状態管理手段は、前記部分アプリ状態管理手段が管理している状態の現在の状態に制限されることなく前記設定中状態及び非設定中状態を管理する一方、前記部分アプリ状態管理手段が取り得る状態が前記設定中状態管理手段の現在の状態に応じて制限されることを特徴とする。
【００１０】
請求項２に記載の画像形成装置は、請求項１に記載の画像形成装置において、前記設定中管理手段が管理する前記設定中状態として、ユーザー向けの設定情報についての設定操作を扱うユーザー設定中状態、または／及び、ユーザーに非公開のサービスパーソン向けの設定情報についての設定操作を扱うサービス設定中状態を含むことを特徴とする。
【００１１】
請求項３に記載の画像形成装置は、請求項１または２のいずれかに記載の画像形成装置において、前記部分アプリ状態管理手段として、装置が制限無く通常に動作する状態と動作が制限された状態とを管理する動作状態管理手段、１または複数段階の省電力状態を管理する省電力状態管理手段、または／及び、前記アプリケーション手段が操作部からの操作入力に応じた制御が可能状態か不可状態かを管理する操作部制御状態管理手段を含むことを特徴とする。
【発明の効果】
【００１２】
請求項１に係る発明によれば、前記アプリ状態管理手段において、画像形成装置の動作を担う前記アプリケーション手段が内部に含む各種状態を、前記設定中管理手段が扱う状態と、その他の部分アプリ状態管理手段が扱う状態とに分け、前記設定中管理手段が扱う状態に応じてその他の部分アプリ状態管理手段が扱う状態が取り得る状態が制限される関係でまとめることによって、前記アプリケーション手段が内部に含む各種状態の管理の簡潔化が可能となり、ひいては、前記アプリケーション手段を実現するためのアプリケーションプログラムの開発にかける工数削減、及び、デバッグにかかる手間の削減が可能となる効果が得られる。
【００１３】
請求項２に係る発明によれば、前記設定中状態管理手段が、一般ユーザー向けの設定情報に係る前記ユーザー設定中状態、サービスパーソン向けの設定情報に係る前記サービス設定中状態、及び、非設定中状態の各状態を管理するものである場合に、請求項１に係る発明と同様の効果を得ることが可能となる効果が得られる。
【００１４】
請求項３に係る発明によれば、前記部分アプリ管理手段として、動作状態、省電力状態、または／及び、操作部制御状態を管理する手段を備える場合に、請求項１に係る発明と同様の効果を得ることが可能となる効果が得られる。
【発明を実施するための最良の形態】
【００１５】
以下、添付図面を参照しながら、本発明を実施するための最良の形態について説明する。
【００１６】
図１に、本発明を実施するための最良の形態に係る画像形成装置１と、その画像形成装置１を含む通信システム構成について示す。
【００１７】
同図において、ネットワークとしてのＬＡＮ１００には、互いにＬＡＮ１００を介してデータのやりとりを行うネットワーク端末として、画像形成装置１、ＰＣ（パーソナルコンピュータ）１０１ａ、１０１ｂ、１０１ｃ等が接続されている。
【００１８】
そして、ＰＣ１０１ａ等の画像形成依頼元の装置は、自装置上で作成した文書データを印刷用に変換した画像データを、ＬＡＮ１００を介して画像形成装置１に転送して画像形成依頼し、画像形成装置１はその依頼を受けて、転送されてきた画像データを印刷出力する。
【００１９】
図２に、画像形成装置１のハードウェアブロック構成について示す。
【００２０】
同図において、ＣＰＵ２は、ＲＡＭ４を作業領域として使用しつつ、ＲＯＭ３に書き込まれたアプリケーションプログラムに基づいて装置各部を制御したり、各種データ処理をしたり、プロトコル制御を行い、画像形成装置としての動作を制御する中央演算処理装置である。
【００２１】
ＲＯＭ３は、ＣＰＵ２が装置各部を制御するためのアプリケーションプログラムや、各文字コードに対応するフォントデータなどの制御に必要な各種データが記憶されるリードオンリメモリである。
【００２２】
ＲＡＭ４は、前述したようにＣＰＵ２の作業領域として使用されるランダムアクセスメモリである。
【００２３】
ＥＥＰＲＯＭ（電気的に書き換え可能な読み出し専用メモリ）５は、装置動作に必要な各種設定情報が記憶されると共に、装置の電源がオフされた状態でもその記憶内容を保持するためのメモリであり、バッテリバックアップされたＳＲＡＭ（スタティックＲＡＭ）や磁気ディスク装置への置き換えも可能である。
【００２４】
時計回路６は、現在の日付及び時刻を常に計時しているもので、ＣＰＵ２は、システムバス１４を介して時計回路６を読み出すことで、現在の日時（日付と時刻）を知ることができる。
【００２５】
操作表示部７は、ユーザーやサービスパーソンからの操作入力を受け入れるための各種キーが配設される一方、液晶表示装置等の表示器を備えユーザーやサービスパーソンに知らせるべき装置の動作状態や各種メッセージを表示するものである。
【００２６】
読取部８は、セットされた原稿を読み取って文書画像データを得るためのものである。
【００２７】
書込部９は、画像データを記録紙に印刷出力するためのものである。
【００２８】
画像処理部１０は、符号化圧縮されていない生の画像データの符号化圧縮、及び、符号化された圧縮データの復号伸張の符号化復号化処理や、２値化処理、変倍処理、縮小拡大処理、画像補正処理、などの、画像形成装置１において扱う画像データに関する各種画像処理を行う。
【００２９】
ＬＡＮ通信制御部１１は、いわゆるＮＩＣ（Network Interface Card）であり、イーサネットのＬＡＮ１００に接続され、イーサネットプロトコル上でのＴＣＰ／ＩＰプロトコルのやりとりにより、その上位のプロトコルによる各種情報のやりとりを行えるようにするためのものである。
【００３０】
システムバス１４は、上記各部がデータをやり取りするためのデータバス・アドレスバス・制御バス、割り込み信号ラインなどにより構成される信号ラインである。
【００３１】
図３に、画像形成装置１のＲＡＭ４の記憶内容について示す。
【００３２】
同図において、記憶領域４ａには、設定中状態フラグＦsetupが記憶される。フラグＦsetupは、後述する設定中状態管理手段１０２の現在の状態を示すものであり、値０が「非設定中状態」、つまり、装置動作に関連する各種設定情報の設定中ではない状態を示し、値１が「第１設定中状態」、つまり、装置動作に関連してＥＥＰＲＯＭ５に記憶された各種設定情報のうちの「第１設定」に係る設定情報について設定中であることを示し、値２が、「第２設定中状態」、つまり、装置動作に関連してＥＥＰＲＯＭ５に記憶された各種設定情報のうちの「第２設定」に係る設定情報について設定中であることを示している。
【００３３】
図４に、画像形成装置１が備えるアプリケーションプログラム１００が含むアプリ状態管理手段１０１の構成について示す。
【００３４】
同図において、アプリ状態管理手段１０１は、設定中状態管理手段１０２と、その設定中状態管理手段１０２に従属する、第１部分アプリ状態管理手段１０３_１、第２部分アプリ状態管理手段１０３_２、…、第Ｎ部分アプリ状態管理手段１０３_Ｎの各部分アプリ状態管理手段により構成されている。
それらの各部分アプリ状態管理手段は、アプリケーションプログラムが含む多種多様な状態を構成する各アプリ状態にそれぞれ対応する状態管理手段である。
【００３５】
設定中状態管理手段１０２は、ＥＥＰＲＯＭ５に記憶された装置動作に関連する各種設定情報を設定中または設定中でない状態（非設定中状態）を管理するものであり、各部分アプリ状態管理手段の取り得る状態は、設定中状態管理手段１０２の現在の状態（図３の記憶領域４ａのフラグＦsetupの値により特定される）により制限される（詳細後述）。
【００３６】
図５に、設定中状態管理手段１０２の状態遷移について示す。
【００３７】
同図において、設定中状態管理手段１０２の状態は、「非設定中状態」、「第１設定中状態」及び「第２設定中状態」の３つの状態を取り得る。そして、「非設定中状態」と「第１設定中状態」との相互の遷移が可能であり、また、「非設定中状態」と「第２設定中状態」との相互の遷移が可能であるが、「第１設定中状態」と「第２設定中状態」との間の直接の遷移はできない。
【００３８】
図５に示す設定中状態管理手段１０２の状態遷移は、図４に示した各部分アプリ状態管理手段の状態によって制限されることなく行われる（詳細後述）。
【００３９】
図６に、第１部分アプリ状態管理手段１０３_１の状態遷移について示す。
【００４０】
同図において、第１部分アプリ状態管理手段１０３_１は、「状態Ａ」と「状態Ｂ」との間の相互遷移が可能である。ただし、後述するように、「状態Ａ」と「状態Ｂ」との間の遷移は、設定中状態管理手段１０２の現在の状態（Ｆsetupの値）により制限される。
【００４１】
図７に第２部分アプリ状態管理手段１０３_２の状態遷移について示す。
【００４２】
同図において、第２部分アプリ状態管理手段１０３_２は、「状態Ｘ」と「状態Ｙ」との間の相互遷移、「状態Ｙ」と「状態Ｚ」との間の相互遷移、及び、「状態Ｚ」と「状態Ｘ」との間の相互遷移、が可能である。ただし、後述するように、それらの状態間の遷移は、設定中状態管理手段１０２の現在の状態（Ｆsetupの値）により制限される。
【００４３】
図８に、設定中状態管理手段１０２の現在の状態に対して第１部分アプリ状態管理手段１０３_１が許される状態の組み合わせについて示す。
【００４４】
同図において、設定中状態管理手段１０２が「非設定中状態」のときは、第１部分アプリ状態管理手段１０３_１は、図６に示した可能な状態のうち、「状態Ａ」または「状態Ｂ」の状態が許される。つまりは、取り得る状態に制限はない。
【００４５】
設定中状態管理手段１０２が「第１設定中状態」のときは、第１部分アプリ状態管理手段１０３_１は、図６に示した可能な状態のうち、「状態Ａ」のみが許される。
【００４６】
設定中状態管理手段１０２が「第２設定中状態」のときは、第１部分アプリ状態管理手段１０３_１は、図６に示した可能な状態のうち、「状態Ａ」のみが許される。
【００４７】
図９に、設定中状態管理手段１０２の現在の状態に対して第２部分アプリ状態管理手段１０３_２が許される状態の組み合わせについて示す。
【００４８】
同図において、設定中状態管理手段１０２が「非設定中状態」のときは、第２部分アプリ状態管理手段１０３_２は、図６に示した可能な状態のうち、「状態Ｘ」、「状態Ｙ」または「状態Ｘ」の状態が許される。つまりは、状態遷移に制限はない。
【００４９】
設定中状態管理手段１０２が「第１設定中状態」のときは、第２部分アプリ状態管理手段１０３_２は、図６に示した可能な状態のうち、「状態Ｘ」または「状態Ｙ」の状態のみが許される。
【００５０】
設定中状態管理手段１０２が「第２設定中状態」のときは、第２部分アプリ状態管理手段１０３_２は、図６に示した可能な状態のうち、「状態Ｘ」のみが許される。
【００５１】
図１０に、設定中状態管理手段１０２における設定中状態制御処理手順について示す。図１０に示す処理手順は、図５に示した状態遷移に対応するものである。
【００５２】
同図において、処理が開始されると先ずフラグＦsetup（図４参照）に値０（非設定中状態）を設定する（処理Ｓ１０１）。
【００５３】
そして、第１または第２設定中状態への移行要因の発生の有無を確認する処理を（処理Ｓ１０２）、移行要因が発生するまで繰り返し行う（判断Ｓ１０３のＮｏのループ）。なお、第１または第２設定中状態への移行要因とは、具体的には、例えば、第１設定中状態に入るための所定の操作入力、または、第２設定中状態に入るための所定の操作入力が検出されたことである。なお、処理Ｓ１０２及び判断１０３は、図５における非設定中状態に相当する部分である。
【００５４】
移行要因が発生すると（判断Ｓ１０３Ｙｅｓ）、発生した移行要因が第１設定中状態または第２設定中状態のいずれの種別に係るものであるかを判断する（判断Ｓ１０４）。
【００５５】
判断１０４において、第１設定中状態の場合には、フラグＦsetupに値１（第１設定中状態）を設定する（処理Ｓ１０５）。
【００５６】
そして、第１設定中状態制御処理を行いつつ（処理Ｓ１０６）、非設定中状態への移行要因の発生を待つ（処理Ｓ１０７、判断Ｓ１０８のＮｏのループ）。なお、第１設定中状態制御処理は、具体的には、ＥＥＰＲＯＭ５に記憶される装置動作に関連する各種設定情報のうちの「第１設定」に係る設定情報を、操作入力に応じて、表示、新規登録、変更、削除する等の処理である。また、非設定中状態への移行要因とは、具体的には、例えば、処理Ｓ１０６の第１設定中状態制御処理による一連の設定操作が終了して非設定中状態に戻ることを指示する所定の操作入力がなされることである。判断Ｓ１０８において、非設定中状態への移行要因が発生すると（判断Ｓ１０８のＹｅｓ）、処理Ｓ１０１に戻る。なお、処理Ｓ１０６、処理Ｓ１０７及び判断１０３は、図５における第１設定中状態に相当する部分である。
【００５７】
判断１０４において、第２設定中状態の場合には、フラグＦsetupに値２（第２設定中状態）を設定する（処理Ｓ１０９）。
【００５８】
そして、第２設定中状態制御処理を行いつつ（処理Ｓ１１０）、非設定中状態への移行要因の発生を待つ（処理Ｓ１１１、判断Ｓ１１２のＮｏのループ）。なお、第２設定中状態制御処理は、具体的には、ＥＥＰＲＯＭ５に記憶される装置動作に関連する各種設定情報のうちの「第２設定」に係る設定情報を、操作入力に応じて、表示、新規登録、変更、削除する等の処理である。また、非設定中状態への移行要因とは、具体的には、例えば、処理Ｓ１１０の第２設定中状態制御処理による一連の設定操作が終了して非設定中状態に戻ることを指示する所定の操作入力がなされることである。判断Ｓ１１２において、非設定中状態への移行要因が発生すると（判断Ｓ１１２のＹｅｓ）、処理Ｓ１０１に戻る。なお、処理Ｓ１１０、処理Ｓ１１１及び判断１１２は、図５における第２設定中状態に相当する部分である。
【００５９】
設定中状態管理手段１０２における以上の設定中状態制御処理により、図５に示した、非設定中状態、第１設定中状態、及び、第２設定中状態の状態遷移が管理・制御されると共に、設定中状態管理手段１０２の現在の状態が図３の記憶領域４ａのフラグＦsetupの値として保持される。
【００６０】
次に、図４に示したように、設定中状態管理手段１０２に従属する、第１部分アプリ状態管理手段１０３_１、第２部分アプリ状態管理手段１０３_２、…、第Ｎ部分アプリ状態管理手段１０３_Ｎ、の各部分アプリ状態管理手段における、部分アプリ状態制御処理手順について、第１部分アプリ状態管理手段１０３_１、及び、第２部分アプリ状態管理手段１０３_２を例にとって以下説明する。
【００６１】
先ず、第１部分アプリ状態管理手段１０３_１における第１部分アプリ状態制御処理手順について、図１１を参照して説明する。図１１の処理手順は、図６に示した状態遷移に対応するものであるが、設定中状態管理手段１０２の現在の状態（フラグＦsetupの値）によって、取り得る状態が、図８に示した組み合わせによって、制限される。
【００６２】
図１１において、先ず、状態Ａまたは状態Ｂのうちの状態Ｂを初期状態として、状態Ｂ制御処理から開始する（処理Ｓ２０１）。状態Ｂ制御処理は、第１部分アプリ状態管理手段１０３_１が管理する状態Ａ及び状態Ｂのうちの状態Ｂに関する所定の制御処理である。
【００６３】
そして、処理Ｓ２０１の状態Ｂ制御処理は、状態Ａへの移行要因が発生せず、かつ、Ｆsetupの値が非設定中状態（値０）である限り継続される（処理Ｓ２０２、判断Ｓ２０３のＮｏ、処理Ｓ２０４、判断Ｓ２０５のＹｅｓのループ）。なお、処理Ｓ２０１、処理Ｓ２０２、判断Ｓ２０３、処理Ｓ２０４、及び、判断Ｓ２０５は、図６の状態Ｂに相当する。
【００６４】
判断Ｓ２０３において、状態Ａへの移行要因が発生した場合には（判断Ｓ２０３のＹｅｓ）、図８の組み合わせに示すように、状態Ａは、設定中状態管理手段１０２の現在の状態が「非設定中状態」、「第１設定中状態」または「第２設定中状態」のいずれの状態の場合でも許される状態であるため、即座に状態Ａに移行する。つまり、処理Ｓ２０６の状態Ａ制御処理に移行する。
【００６５】
また、判断Ｓ２０５において、非設定中状態でなくなった場合には（判断Ｓ２０５のＮｏ）、図８の組み合わせに示すように、非設定中状態でない（第１または第２設定中状態である）場合には、状態Ｂであることが許されず、許されるのは状態Ａのみであるため、即座に状態Ａに移行する。つまり、処理Ｓ２０６の状態Ａ制御処理に移行する。
【００６６】
状態Ａ制御処理は、第１部分アプリ状態管理手段１０３_１が管理する状態Ａ及び状態Ｂのうちの状態Ａに関する所定の制御処理である。
【００６７】
そして、処理Ｓ２０６の状態Ａ制御処理は、状態Ｂへの移行要因が発生しない限り継続される（判断Ｓ２０８のＮｏのループ）。この場合、状態Ａは、設定中状態管理手段１０２の現在の状態により制限されないため、設定中状態管理手段１０２の現在の状態ついては関知する必要がない。
【００６８】
判断Ｓ２０８において状態Ｂへの移行要因が発生した場合には（判断Ｓ２０８のＹｅｓ）、図８の組み合わせに示すように、状態Ｂは、設定中状態管理手段１０２の現在の状態が「非設定中状態」である場合のみ許されるため、フラグＦsetupを確認し（処理Ｓ２０９）、非設定中状態（値０）である場合に限り（判断Ｓ２１０のＹｅｓ）、状態Ａに移行する。つまり、処理Ｓ２０１に移行する。
【００６９】
判断Ｓ２１０において、非設定中状態でない（第１または第２設定中）である場合には（判断Ｓ２１０のＮｏ）、状態Ｂは許されず、状態Ａのみが許されるため、処理Ｓ２０６に戻り、状態Ａを継続する。なお、処理Ｓ２０６、処理Ｓ２０７、判断Ｓ２０８、処理Ｓ２０９、及び、判断Ｓ２１０は、図６の状態Ａに相当する。
【００７０】
このように、設定中状態管理手段１０２を他の部分アプリ状態管理手段の現在の状態によって取り得る状態が制限されないようにすると共に、第１部分アプリ状態管理手段１０３_１の取り得る状態が設定中状態管理手段１０２の現在の状態に応じて制限されつつ決定されることで、アプリケーションプログラムが含む多種多様な状態の相互の関係を明確化できるため状態管理の複雑さを解消でき、ひいては、各状態を管理する部分プログラムの作成を容易化でき、また、状態間の相互関係の理解に誤解が生じにくくプログラム作成の信頼性、ひいては、画像形成装置１の動作の確実性を向上することができる。
【００７１】
次に、第２部分アプリ状態管理手段１０３_２における第２部分アプリ状態制御処理手順について、図１２ないし図１４を参照して説明する。図１２ないし図１４の処理手順は、図７に示した状態遷移に対応するものであるが、設定中状態管理手段１０２の現在の状態（フラグＦsetupの値）によって、取り得る状態が、図９に示した組み合わせによって、制限される。
【００７２】
図１２において、先ず、状態Ｘ、ＹまたはＺのうちの状態Ｚを初期状態として、状態Ｚ制御処理から開始する（処理Ｓ３０１）。状態Ｚ制御処理は、第２部分アプリ状態管理手段１０３_２が管理する状態Ｘ、Ｙ及びＺのうちの状態Ｚに関する所定の制御処理である。
【００７３】
そして、処理Ｓ３０１の状態Ｚ制御処理は、状態Ｙへの移行要因が発生せず、
状態Ｘへの移行要因が発生せず、かつ、Ｆsetupの値が非設定中状態（値０）である限り継続される（処理Ｓ３０２、判断Ｓ３０３のＮｏ、処理Ｓ３０４、判断Ｓ３０５のＮｏ、処理Ｓ３０６、判断Ｓ３０７のＹｅｓのループ）。
【００７４】
判断Ｓ３０５において、状態Ｘへの移行要因が発生した場合には（判断Ｓ３０５のＹｅｓ）、図９の組み合わせに示すように、状態Ｘは、設定中状態管理手段１０２の現在の状態が「非設定中状態」、「第１設定中状態」または「第２設定中状態」のいずれの状態の場合でも許される状態であるため、即座に状態Ｘに移行する。つまり、図１３の処理Ｓ４０１の状態Ｘ制御処理に移行する。
【００７５】
また、判断Ｓ３０７において、非設定中状態でなくなった場合には（判断Ｓ３０７のＮｏ）、図９の組み合わせに示すように、非設定中状態でない（第１または第２設定中状態である）場合には、状態Ｚであることが許されず、第１設定中状態にあっては状態Ｘまたは状態Ｙ、第２設定中状態にあっては状態Ｘのみが許されるため、この場合、共通に許される状態Ｘに移行する。つまり、図１３の処理Ｓ４０１の状態Ｘ制御処理に移行する。
【００７６】
また、判断Ｓ３０３において、状態Ｙへの移行要因が発生した場合には（判断Ｓ３０３のＹｅｓ）、Ｆsetupの値が第２設定中状態（値２）以外であるか否かを確認し（処理Ｓ３０８）、第２設定状態中状態以外、つまり、非設定中状態または第１設定中状態である場合には（判断Ｓ３０９のＹｅｓ）、図９の組み合わせに示されるように、状態Ｙが許されるため、状態Ｙに移行する。つまり、図１４の処理Ｓ５０１の状態Ｙ制御処理に移行する。
【００７７】
判断Ｓ３０９において、第２設定状態中状態以外でない、つまり、第２設定中状態である場合には（判断Ｓ３０９のＮｏ）、図９の組み合わせに示されるように、状態Ｘのみが許されるため、処理Ｓ５０１に戻って、状態Ｘを継続する。
【００７８】
なお、処理Ｓ３０１、処理Ｓ３０２、判断Ｓ３０３、処理Ｓ３０４、判断Ｓ３０５、処理Ｓ３０６、判断Ｓ３０７、処理Ｓ３０８，及び、判断Ｓ３０９は、図７の状態Ｚに相当する。
【００７９】
図１３において、状態Ｘ制御処理が開始される（処理Ｓ４０１）。状態Ｘ制御処理は、第２部分アプリ状態管理手段１０３_２が管理する状態Ｘ、Ｙ及びＺのうちの状態Ｘに関する所定の制御処理である。
【００８０】
そして、処理Ｓ４０１の状態Ｘ制御処理は、状態Ｙへの移行要因が発生せず、かつ、状態Ｚへの移行要因が発生しない限り継続される（処理Ｓ４０２、判断Ｓ４０３のＮｏ、処理Ｓ４０４、判断Ｓ４０５のＮｏのループ）。
【００８１】
そして、判断Ｓ４０５において、状態Ｚへの移行要因が発生した場合には（判断Ｓ４０５のＹｅｓ）、Ｆsetupの値が非設定中状態（値０）であるか否かを確認し（処理Ｓ４０８）、非設定中状態（値０）である場合に限り（判断Ｓ４０９のＹｅｓ）、状態Ｚに移行する。つまり、図１２の処理Ｓ３０１の状態Ｚ制御処理に移行する。判断Ｓ４０９において、非設定中状態でない場合には（判断Ｓ４０９のＮｏ）、図９の組み合わせに示されるように、状態Ｚが許されないため、処理Ｓ４０１に戻って状態Ｘを継続する。
【００８２】
また、判断Ｓ４０３において、状態Ｙへの移行要因が発生した場合には（判断Ｓ４０３のＹｅｓ）、Ｆsetupの値が第２設定中状態（値２）以外であるか否かを確認し（処理Ｓ４０６）、第２設定状態中状態以外、つまり、非設定中状態または第１設定中状態である場合には（判断Ｓ４０７のＹｅｓ）、図９の組み合わせに示されるように、状態Ｙが許されるため、状態Ｙに移行する。つまり、図１４の処理Ｓ５０１の状態Ｙ制御処理に移行する。
【００８３】
判断Ｓ４０７において、第２設定状態中状態以外でない、つまり、第２設定中状態である場合には（判断Ｓ４０７のＮｏ）、図９の組み合わせに示されるように、状態Ｘのみが許されるため、処理Ｓ５０１に戻って、状態Ｘを継続する。
【００８４】
なお、処理Ｓ４０１、処理Ｓ４０２、判断Ｓ４０３、処理Ｓ４０４、判断Ｓ４０５、処理Ｓ４０６、判断Ｓ４０７、処理Ｓ４０８，及び、判断Ｓ４０９は、図７の状態Ｘに相当する。
【００８５】
図１４において、状態Ｙ制御処理が開始される（処理Ｓ５０１）。状態Ｙ制御処理は、第２部分アプリ状態管理手段１０３_２が管理する状態Ｘ、Ｙ及びＺのうちの状態Ｙに関する所定の制御処理である。
【００８６】
そして、処理Ｓ５０１の状態Ｙ制御処理は、状態Ｚへの移行要因が発生せず、状態Ｘへの移行要因が発生せず、かつ、Ｆsetupの値が第２設定中状態（値２）以外である限り継続される（処理Ｓ５０２、判断Ｓ５０３のＮｏ、処理Ｓ５０４、判断Ｓ５０５のＮｏ、処理Ｓ５０６、判断Ｓ５０７のＹｅｓのループ）。
【００８７】
判断Ｓ５０５において、状態Ｘへの移行要因が発生した場合には（判断Ｓ５０５のＹｅｓ）、図９の組み合わせに示すように、状態Ｘは、設定中状態管理手段１０２の現在の状態が「非設定中状態」、「第１設定中状態」または「第２設定中状態」のいずれの状態の場合でも許される状態であるため、即座に状態Ｘに移行する。つまり、図１３の処理Ｓ５０１の状態Ｘ制御処理に移行する。
【００８８】
また、判断Ｓ５０７において、第２設定状態中状態以外でない、つまり、第２設定中状態である場合には（判断Ｓ５０７のＮｏ）、図９の組み合わせに示されるように、状態Ｘのみが許されるため、状態Ｘに移行する。つまり、図１３の処理Ｓ５０１の状態Ｘ制御処理に移行する。
【００８９】
また、判断Ｓ５０３において、状態Ｚへの移行要因が発生した場合には（判断Ｓ５０３のＹｅｓ）、Ｆsetupの値が非設定中状態（値０）であるか否かを確認し（処理Ｓ５０８）、非設定中状態（値０）である場合に限り（判断Ｓ５０９のＹｅｓ）、状態Ｚに移行する。つまり、図１２の処理Ｓ３０１の状態Ｚ制御処理に移行する。判断Ｓ５０９において、非設定中状態でない場合には（判断Ｓ５０９のＮｏ）、図９の組み合わせに示されるように、状態Ｚが許されないため、処理Ｓ５０１に戻って状態Ｙを継続する。
【００９０】
なお、処理Ｓ５０１、処理Ｓ５０２、判断Ｓ５０３、処理Ｓ５０４、判断Ｓ５０５、処理Ｓ５０６、判断Ｓ５０７、処理Ｓ５０８，及び、判断Ｓ５０９は、図７の状態Ｙに相当する。
【００９１】
このように、設定中状態管理手段１０２を他の部分アプリ状態管理手段の現在の状態によって取り得る状態が制限されないようにすると共に、第２部分アプリ状態管理手段１０３_２の取り得る状態が設定中状態管理手段１０２の現在の状態に応じて制限されつつ決定されることで、アプリケーションプログラムが含む多種多様な状態の相互の関係を明確化できるため状態管理の複雑さを解消でき、ひいては、各状態を管理する部分プログラムの作成を容易化でき、また、状態間の相互関係の理解に誤解が生じにくくプログラム作成の信頼性、ひいては、画像形成装置１の動作の確実性を向上することができる。
【００９２】
図４に示したアプリ状態管理手段１０１を構成する部分アプリ状態管理手段として、図１５に示すように、動作状態管理手段１０３_ａ、省電力状態管理手段１０３_ｂ、及び、操作部制御状態管理手段１０３_ｃを適用することができる。
【００９３】
なお、動作状態管理手段１０３_ａは、装置が制限無く通常に動作する状態（オンライン）と動作が制限された状態（オフライン）との２つの内部状態を管理するものである。なお、「オンライン」状態は、ＬＡＮ１００を介してＰＣ１０１ａ等からの印刷依頼に係る画像データを受信して印刷出力する画像形成装置としての通常の動作を行う状態であり、「オフライン」状態は、ＬＡＮ１００を介したＰＣ１０１ａ等からの印刷依頼に応えずに印刷動作を行わない画像形成装置としての本来の動作を行わない状態である。
【００９４】
また、省電力状態管理手段１０３_ｂは、１または複数段階の省電力状態を内部状態として管理するものであり、具体的には、電子写真方式の書込部９が備える定着ローラを定着ヒータへの通電を制御して所定の定着温度に維持して必要となれば遅滞なく印刷動作を開始できる状態である「通常待機状態」、定着ヒータへの通電を制御して定着ローラを所定の定着温度より低い予熱温度に維持して必要となれば比較的時間で印刷動作を開始できる状態である「予熱状態」、及び、定着ヒータへの通電を停止して消費電力の低減を最優先した状態である「夜間状態」との３つの内部状態を管理するものである。
【００９５】
また、図５に示した設定中状態管理手段１０２の遷移し得る状態のうちの、第１設定中状態及び第２設定中状態として、図１６に示すように、ユーザー設定中状態及びサービス設定中状態を適用することができる。なお、ユーザー設定中状態は、ユーザー向けの設定情報についての設定操作を扱う状態である。また、サービス設定中状態は、ユーザーに非公開のサービスパーソン向けの設定情報についての設定操作を扱う状態である。
【００９６】
図１６において、設定中状態管理手段１０２の状態は、「非設定中状態」、「ユーザー設定中状態」及び「サービス設定中状態」の３つの状態を取り得る。そして、「非設定中状態」と「ユーザー設定中状態」との相互の遷移が可能であり、また、「非設定中状態」と「サービス設定中状態」との相互の遷移が可能であるが、「ユーザー設定中状態」と「サービス設定中状態」との間の直接の遷移はできない。
【００９７】
図１６に示す設定中状態管理手段１０２の状態遷移は、図１５に示した各部分アプリ状態管理手段の状態によって制限されることなく行われる。
【００９８】
図１７に、動作状態管理手段１０３_ａの状態遷移について示す。
【００９９】
同図において、動作状態管理手段１０３_ａは、「オンライン」と「オフライン」との間の相互遷移が可能である。ただし、後述するように、「オンライン」と「オフライン」との間の遷移は、後述する図２０に示すように、設定中状態管理手段１０２の現在の状態により制限される。
【０１００】
図１８に省電力状態管理手段１０３_ｂの状態遷移について示す。
【０１０１】
同図において、省電力状態管理手段１０３_ｂは、「通常待機状態」と「予熱状態」との間の相互遷移、「予熱状態」と「夜間状態」との間の相互遷移、及び、「夜間状態」と「通常待機状態Ｘ」との間の相互遷移、が可能である。ただし、後述するように、それらの状態間の遷移は、後述する図２１に示すように、設定中状態管理手段１０２の現在の状態により制限される。
【０１０２】
図１９に、操作部制御状態管理手段１０３_ｃの状態遷移について示す。
【０１０３】
同図において、操作部制御状態管理手段１０３_ｃは、「表」と「裏」との間の相互遷移が可能である。ただし、後述するように、「表」と「裏」との間の遷移は、後述する図２２に示すように、設定中状態管理手段１０２の現在の状態により制限される。
【０１０４】
図２０に、設定中状態管理手段１０２の現在の状態に対して動作状態管理手段１０３_ａが許される状態の組み合わせについて示す。
【０１０５】
同図において、設定中状態管理手段１０２が「非設定中状態」のときは、動作状態管理手段１０３_ａは、図１７に示した可能な状態のうち、「オンライン」または「オフライン」の状態が許される。つまりは、取り得る状態に制限はない。
【０１０６】
設定中状態管理手段１０２が「ユーザー設定中状態」のときは、動作状態管理手段１０３_ａは、図１７に示した可能な状態のうち、「オフライン」のみが許される。
【０１０７】
設定中状態管理手段１０２が「サービス設定中状態」のときは、動作状態管理手段１０３_ａは、図１７に示した可能な状態のうち、「オフライン」のみが許される。
【０１０８】
図２１に、設定中状態管理手段１０２の現在の状態に対して省電力状態管理手段１０３_ｂが許される状態の組み合わせについて示す。
【０１０９】
同図において、設定中状態管理手段１０２が「非設定中状態」のときは、省電力状態管理手段１０３_ｂは、図１８に示した可能な状態のうち、「通常待機状態」、「予熱状態」または「夜間状態」の状態が許される。つまりは、状態遷移に制限はない。
【０１１０】
設定中状態管理手段１０２が「ユーザー設定中状態」のときは、省電力状態管理手段１０３_ｂは、図１８に示した可能な状態のうち、「通常待機状態」の状態のみが許される。
【０１１１】
設定中状態管理手段１０２が「サービス設定中状態」のときは、省電力状態管理手段１０３_ｂは、図１８に示した可能な状態のうち、「通常待機状態」の状態のみが許される。
【０１１２】
図２２に、設定中状態管理手段１０２の現在の状態に対して操作部制御状態管理手段１０３_ｃが許される状態の組み合わせについて示す。
【０１１３】
同図において、設定中状態管理手段１０２が「非設定中状態」のときは、操作部制御状態管理手段１０３_ｃは、図１９に示した可能な状態のうち、「表」または「裏」の状態が許される。つまりは、取り得る状態に制限はない。
【０１１４】
設定中状態管理手段１０２が「ユーザー設定中状態」のときは、操作部制御状態管理手段１０３_ｃは、図１９に示した可能な状態のうち、「表」のみが許される。
【０１１５】
設定中状態管理手段１０２が「サービス設定中状態」のときは、操作部制御状態管理手段１０３_ｃは、図１９に示した可能な状態のうち、「表」のみが許される。
【０１１６】
このように、設定中状態管理手段１０２を他の部分アプリ状態管理手段の現在の状態によってその取り得る状態が制限されないようにすると共に、動作状態管理手段１０３_ａ、省電力状態管理手段１０３_ｂ、及び、操作部制御状態管理手段１０３_ｃのそれぞれが取り得る状態が設定中状態管理手段１０２の現在の状態に応じて制限されつつ決定されることで、アプリケーションプログラムが含む多種多様な状態の相互の関係を明確化できるため状態管理の複雑さを解消でき、ひいては、動作状態、省電力状態、操作部制御状態の各状態を管理する部分プログラムの作成を容易化でき、また、状態間の相互関係の理解に誤解が生じにくくプログラム作成の信頼性、ひいては、画像形成装置１の動作の確実性を向上することができる。
【０１１７】
なお、以上本発明を実施するための最良の形態について説明したが、本発明は上記のものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【図面の簡単な説明】
【０１１８】
【図１】本発明を実施するための最良の形態に係る画像形成装置と、その画像形成装置に画像形成依頼する他装置としてのＰＣを含む通信システム構成について示す図である。
【図２】本発明を実施するための最良の形態に係る画像形成装置のハードウェアブロック構成について示す図である。
【図３】図２の画像形成装置のＲＡＭの記憶内容について示す図である。
【図４】図２の画像形成装置が備えるアプリケーションプログラムが含むアプリ状態管理手段の構成について示す図である。
【図５】設定中状態管理手段の状態遷移について示す図である。
【図６】第１部分アプリ状態管理手段の状態遷移について示す図である。
【図７】第２部分アプリ状態管理手段の状態遷移について示す図である。
【図８】設定中状態管理手段の状態と第１部分アプリ状態管理手段の状態との組み合わせについて示す図である。
【図９】設定中状態管理手段の状態と第２部分アプリ状態管理手段の状態との組み合わせについて示す図である。
【図１０】設定中状態管理手段における設定中状態制御処理手順について示すフローチャートである。
【図１１】第１部分アプリ状態管理手段における第１部分アプリ状態制御処理手順について示すフローチャートである。
【図１２】第２部分アプリ状態管理手段における第２部分アプリ状態制御処理手順について示すフローチャートである。
【図１３】図１２と共に、第２部分アプリ状態管理手段における第２部分アプリ状態制御処理手順について示すフローチャートである。
【図１４】図１２及び図１３と共に、第２部分アプリ状態管理手段における第２部分アプリ状態制御処理手順について示すフローチャートである。
【図１５】部分アプリ状態として、動作状態、省電力状態及び操作部制御状態を含む場合における、図２の画像形成装置が備えるアプリケーションプログラムが含むアプリ状態管理手段の構成について示す図である。
【図１６】設定中状態として、ユーザー設定中状態及びサービス設定中状態を含む場合における、設定中状態管理手段の状態遷移について示す図である。
【図１７】動作状態管理手段の状態遷移について示す図である。
【図１８】省電力状態管理手段の状態遷移について示す図である。
【図１９】操作部制御状態管理手段の状態遷移について示す図である。
【図２０】設定中状態管理手段の状態と動作状態管理手段の状態との組み合わせについて示す図である。
【図２１】設定中状態管理手段の状態と省電力状態管理手段の状態との組み合わせについて示す図である。
【図２２】設定中状態管理手段の状態と操作部制御状態管理手段の状態との組み合わせについて示す図である。
【符号の説明】
【０１１９】
１  画像形成装置
２  ＣＰＵ
３  ＲＡＭ
４  ＲＯＭ
５  ＥＥＰＲＯＭ
６  時計回路
７  操作表示部
８  読取部
９  書込部
１０  画像処理部
１１  ＬＡＮ通信制御部
１２  システムバス
１０１  ＬＡＮ
１０１ａ、１０１ｂ、１０１ｃ  パーソナルコンピュータ（ＰＣ）
【図１】
2006018360.tif 000003
【図２】
2006018360.tif 000004
【図３】
2006018360.tif 000005
【図４】
2006018360.tif 000006
【図５】
2006018360.tif 000007
【図６】
2006018360.tif 000008
【図７】
2006018360.tif 000009
【図８】
2006018360.tif 000010
【図９】
2006018360.tif 000011
【図１０】
2006018360.tif 000012
【図１１】
2006018360.tif 000013
【図１２】
2006018360.tif 000014
【図１３】
2006018360.tif 000015
【図１４】
2006018360.tif 000016
【図１５】
2006018360.tif 000017
【図１６】
2006018360.tif 000018
【図１７】
2006018360.tif 000019
【図１８】
2006018360.tif 000020
【図１９】
2006018360.tif 000021
【図２０】
2006018360.tif 000022
【図２１】
2006018360.tif 000023
【図２２】
2006018360.tif 000024