способ и устройство для обработки информации
Классы МПК: | G06F3/12 вывод цифровых данных на печатающие устройства |
Автор(ы): | АБЕ Коити (JP) |
Патентообладатель(и): | КЭНОН КАБУСИКИ КАЙСЯ (JP) |
Приоритеты: |
подача заявки:
2006-08-11 публикация патента:
10.02.2009 |
Изобретение относится к средствам приема информации от периферийного устройства. Техническим результатом является обеспечение гибкости приема при изменении информации об устройстве печати. Способ обработки информации включает в себя этап получения для получения из устройства слежения метода приема для приема сохраненной информации; этап приема для приема сохраненной информации согласно полученному методу приема и этап управления отображением для предоставления возможности блоку слежения выполнять отображение, основываясь на информации, принятой на этапе приема. 2 н. и 8 з.п. ф-лы, 33 ил.
Формула изобретения
1. Способ управления отображением в устройстве обработки информации, оборудованном языковым монитором, который принимает и сохраняет информацию из устройства печати через коммуникационный канал при помощи запроса информации или регистрации события, причем упомянутый способ содержит:
этап получения для получения из языкового монитора метода приема для приема сохраненной информации;
этап приема для приема сохраненной информации согласно полученному методу приема; и
этап управления отображением для предоставления возможности модулю отображения выполнять отображение, основываясь на информации, принятой на этапе приема.
2. Способ по п.1, в котором языковой монитор преобразует сохраненную информацию, принятую из устройства печати, в форму для ответа на полученный запрос, основываясь на указанном методе приема, и сохраняет преобразованную информацию.
3. Способ по п.1, дополнительно содержащий этап определения для определения, принимать ли сохраненную информацию, согласно методу приема, полученному на этапе получения,
при этом этап приема включает в себя этап приема сохраненной информации, основываясь на определении, выполненном на этапе определения.
4. Способ по п.1, в котором, если имеется изменение в информации, принятой из устройства печати языковым монитором, языковой монитор посредством позитивного уведомления посылает метод приема, который получают на этапе получения.
5. Способ по п.2, в котором метод приема представляет собой путь доступа к преобразованной и сохраненной информации.
6. Устройство управления отображением, оборудованное языковым монитором, который принимает и сохраняет информацию из устройства печати через коммуникационный канал при помощи запроса информации или регистрации события, причем упомянутое устройство содержит:
модуль получения, выполненный с возможностью получать из языкового монитора метод приема для приема сохраненной информации;
модуль приема, выполненный с возможностью принимать сохраненную информацию согласно полученному методу приема; и
модуль управления отображением, выполненный с возможностью обеспечения модулю отображения выполнять отображение, основываясь на сохраненной информации, принятой модулем приема.
7. Устройство по п.6, в котором языковой монитор преобразует информацию, принятую из устройства печати в форму для ответа на полученный запрос, основываясь на методе приема, и сохраняет преобразованную информацию.
8. Устройство по п.6, дополнительно содержащее модуль определения, выполненный с возможностью определения, принимать ли сохраненную информацию согласно методу приема, полученному модулем получения,
при этом модуль приема принимает сохраненную информацию, основываясь на определении, выполненном модулем определения.
9. Устройство по п.6, в котором, если имеется изменение в информации, принятой из устройства печати языковым монитором, языковой монитор посредством позитивного уведомления посылает метод приема, который получает модуль получения.
10. Устройство по п.7, в котором метод приема представляет собой путь доступа к преобразованной и сохраненной информации.
Описание изобретения к патенту
Область техники, к которой относится изобретение
Настоящее изобретение относится к технологии приема информации из периферийного устройства.
Уровень техники
В последнее время в офисах, дома и в местах общественного пользования используются различные виды периферийных устройств, таких как принтеры и сканеры. Кроме того, разработаны и практически используются различные виды и типы утилит, помогающие пользователю, использующему данное периферийное устройство.
Например, известна утилита, используемая для струйного принтера, которая при помощи клиентского компьютера может просматривать информацию, относящуюся к чернильному картриджу, установленному в корпусе устройства печати, и состоянию заданий на печать в устройстве печати.
С другой стороны, хорошо известны технологии, относящиеся к приему различного вида информации о периферийных устройствах, например, административная база данных (MIB), которая описана в RFC 1213 административной базы данных. В выложенной заявке на патент Японии № 10-074132 раскрыта технология получения информации об устройстве печати при помощи MIB.
Кроме того, существует другая хорошо известная технология приема различных видов информации. Например, существует схема двунаправленного обмена данными (BCS), которая является общедоступной на веб сайте для разработчиков Microsoft (MSDN) по адресу "http://msdn.microsoft.com/library/default.asp". К тому же, следует отметить, что далее в настоящем описании схема двунаправленного обмена данными иногда называется двунаправленной схемой.
Фиг.31 представляет собой диаграмму, которая иллюстрирует обычный пример, описывающий схему и значения, используемые при перечислении посредством этой схемы информации о чернилах и состоянии чернил, о рабочем состоянии, информации об аппаратном обеспечении, информации о модуле подачи бумаги и модуле выдачи бумаги.
Как показано на Фиг.31, схема определяется из утилиты для вызова функции IBidiSpl::SendRecv(). Определяемая схема включает в себя " InkInfo", " StatusInfo", " HardwareInfo", " InputBinsInfo" и " OutputBinsInfo".
Затем в столбце "Query" (Schema), схема "Retrieve" (Schema), которая описывает информацию о принтере и статусе принтера, и значение "Retrieve" (Value) возвращаются в виде набора.
В примере, показанном на Фиг.31, в принтер загружены черные, голубые, пурпурные и желтые чернила, и каждое состояние описывает "оставшееся количество чернил: полное (Full)", "оставшееся количество чернил: низкое (Low)", "чернил не осталось (Out)" и "оставшееся количество чернил: полное (Full)" соответственно.
Кроме того, каждое имя чернил описывает "CI-B Black", "CI-C Cyan", "CI-M Magenta" и "CI-Y Yellow", соответственно.
Кроме того, на Фиг.31 показано, что рабочим состоянием является "Online" в режиме "Standby", что размер памяти, установленной в принтере, составляет 2 Мбайт, что в принтере в качестве модуля подачи бумаги установлено устройство автоматической подачи бумаги, называемое "ASF-1", и что в принтере в качестве модуля выдачи бумаги установлен лоток, называемый "Tray-1".
Как описано выше, утилита перечисляет различные виды информации, используя схему для получения всей подробной информации о принтере, которая описывается этой схемой.
На Фиг.32 показаны обычные примеры схем, которые используются, когда утилита принимает из принтера информацию, имеющую отношение к чернилам и состоянию чернил. Более точно, схемы определяются в виде аргументов при вызове функции "IBidiSpl::SendRecv()" интерфейса прикладных программ (API) COM интерфейса "IBidiSpl", используемой в операционной системе (ОС) Windows (зарегистрированная торговая марка) XP, когда утилита принимает из принтера информацию, имеющую отношение к чернилам и состоянию чернил, через интерфейсы печати и диспетчера очереди печати (далее в настоящем описании иногда называемые "PPSI").
Как показано на Фиг.32, "InkInfo" имеет тип узла "Property" и указывает на информацию, относящуюся к чернилам. Полный путь к "InkInfo" в схеме представляет собой " InkInfo". "[Color]" имеет тип узла "Property" и указывает на информацию, относящуюся к цвету. Полный путь к "[Color]" в схеме представляет собой " InkInfo.[Color]". Допустимые значения представляют собой "Black", обозначающее черное, "Cyan", обозначающее голубое, "Magenta", обозначающее пурпурное, и "Yellow", обозначающее желтое.
Когда необходимо принять информацию, относящуюся к черным чернилам, определяется " InkInfo.Black". "Installed" имеет тип узла "Value" и тип данных "Boolean" и указывает, загружены ли [Color] чернила. Полный путь к "Installed" в схеме представляет собой " InkInfo.[Color]:Installed". Допустимыми значениями являются "True", указывающее на то, что [Color] чернила загружены, и "False", указывающее на то, что [Color] чернила не загружены.
"State" имеет тип узла "Value" и тип данных "String" и указывает на состояние, обозначающее оставшееся количество [Color] чернил. Полный путь к "State" в схеме представляет собой " InkInfo.[Color]:State". Допустимые значения представляют собой "Full", указывающее, что оставшееся количество [Color] чернил является полным, "Low", указывающее на то, что оставшееся количество [Color] чернил является низким, "Out", указывающее на то, что [Color] чернила закончились, и "Unknown", указывающее на то, что оставшееся количество [Color] чернил неизвестно.
"Name" имеет тип узла "Value" и тип данных "String" и указывает на имя [Color] чернил. Полный путь к "Name" в схеме представляет собой " InkInfo.[Color]:Name".
Допустимые значения представляют собой, например, строки ASCII символов, показанные в "Примерах" на Фиг.32.
На Фиг.33 показаны обычные примеры схем, которые используются, когда утилита принимает из принтера информацию, относящуюся к модулю выдачи бумаги. Схемы определяются в виде аргументов при вызове API функции "IBidiSpl::SendRecv()" COM интерфейса "IBidiSpl", используемой в операционной системе Windows (зарегистрированная торговая марка) XP, когда утилита принимает информацию, относящуюся к модулю выдачи бумаги из принтера через интерфейсы печати и диспетчера очереди печати.
Как показано на Фиг.33, "OutputBinsInfo" имеет тип узла "Property" и указывает на информацию, относящуюся к модулю выдачи бумаги. Полный путь к "OutputBinsInfo" в схеме представляет собой " OutputBinsInfo". "[Type]" имеет тип узла "Property" и указывает на тип модуля выдачи бумаги. Полный путь к "[Type]" в схеме представляет собой " OutputBinsInfo.[Type]". Допустимым значением является "Tray", указывающее на лоток.
Когда необходимо принять информацию, относящуюся к лотку, который представляет собой модуль выдачи бумаги, определяется " OutputBinsInfo.Tray". "Installed" имеет тип узла "Value" и тип данных "Boolean" и указывает, установлен ли [Type] модуль выдачи бумаги. Полный путь к "Installed" в схеме представляет собой " OutputBinsInfo.[Type]:Installed". Допустимыми значениями являются "True", указывающее, что [Type] модуль выдачи бумаги установлен, и "False", указывающее, что [Type] модуль выдачи бумаги не установлен.
"Name" имеет тип узла "Value" и тип данных "String" и указывает на имя, относящееся к [Type] модулю выдачи бумаги. Полный путь к "Name" в схеме представляет собой " OutputBinsInfo.[Type]:Name". Допустимыми значениями являются, например, строки ASCII символов, как показано в "Примерах" на Фиг.33. Таким образом, утилита принимает информацию, относящуюся к модулю выдачи бумаги при помощи схем, приведенных на Фиг.33.
Однако при этом в вышеприведенной структуре, при добавлении нового, ранее неизвестного, вида информации об устройстве печати необходима модификация модуля верхнего уровня (утилиты). Другими словами, программа для приема добавленного нового вида информации, например, не может быть инсталлирована в модуль верхнего уровня (утилиту). Таким образом, необходима структура для более гибкого приема информации об устройстве печати.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Согласно одному из аспектов настоящего изобретения предоставляется способ обработки информации в устройстве обработки информации, оборудованном модулем слежения, который принимает и сохраняет информацию из устройства печати через коммуникационный канал при помощи запроса информации или регистрации события. Способ обработки информации включает в себя этап получения для получения из модуля слежения метода приема для приема сохраненной информации; этап приема для приема сохраненной информации согласно полученному методу приема; и этап управления отображением для предоставления возможности модулю отображения выполнять отображение, основываясь на информации, принятой на этапе приема.
Дополнительные особенности настоящего изобретения станут понятными из нижеследующего подробного описания иллюстративных примеров со ссылкой на прилагаемые чертежи.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Прилагаемые чертежи, которые включены в описание и составляют его неотъемлемую часть, иллюстрируют варианты осуществления настоящего изобретения и совместно с описанием служат для объяснения принципов настоящего изобретения.
Фиг.1 представляет собой диаграмму, которая иллюстрирует примерный общий вид системы печати.
Фиг.2 представляет собой блок-схему, которая иллюстрирует пример конфигурации аппаратных средств, относящихся к устройству обработки информации общего назначения.
Фиг.3 представляет собой блок-схему, которая иллюстрирует пример конфигурации аппаратных средств периферийного устройства.
Фиг.4 представляет собой диаграмму, которая иллюстрирует пример блок-схемы программного модуля, работающего в устройстве обработки информации.
Фиг.5 представляет собой диаграмму, которая иллюстрирует поток обработки в системе печати.
Фиг.6 представляет собой блок-схему последовательности операций, относящуюся к обработке услуги уведомления, выполняемой модулем слежения.
Фиг.7 представляет собой блок-схему последовательности операций, относящуюся к обработке услуги уведомления, выполняемой модулем слежения.
Фиг.8 представляет собой блок-схему последовательности операций, которая иллюстрирует обработку преобразования согласно определению схемы.
Фиг.9 представляет собой блок-схему последовательности операций, выполняемых утилитой, которая иллюстрирует обработку для получения информации о принтере.
Фиг.10 представляет собой блок-схему последовательности операций, выполняемых утилитой, которая иллюстрирует обработку для получения информации о принтере.
Фиг.11 представляет собой блок-схему последовательности операций, которая иллюстрирует обработку для формирования данных для отображения информации.
Фиг.12 представляет собой диаграмму, которая иллюстрирует внешний вид пользовательского интерфейса утилиты.
Фиг.13 представляет собой диаграмму, которая иллюстрирует схему, используемую, когда утилита принимает информацию о чернилах и состоянии чернил, загруженных в принтер.
Фиг.14 представляет собой диаграмму, которая иллюстрирует схемы, используемые, когда утилита принимает информацию об аппаратном обеспечении принтера.
Фиг.15 представляет собой диаграмму, которая иллюстрирует схемы, используемые, когда утилита принимает информацию, относящуюся к модулю подачи бумаги принтера.
Фиг.16 представляет собой диаграмму, которая иллюстрирует пример схем и значений при перечислении информации о принтере.
Фиг.17 представляет собой диаграмму, которая иллюстрирует данные, передаваемые и получаемые между ПК и принтером.
Фиг.18 представляет собой диаграмму, которая иллюстрирует внешний вид пользовательского интерфейса утилиты.
Фиг.19 представляет собой диаграмму, которая иллюстрирует схемы, используемые, когда утилита принимает информацию о модуле подачи бумаги принтера.
Фиг.20 представляет собой диаграмму, которая иллюстрирует пример схем и значений при перечислении информации о принтере.
Фиг.21 представляет собой диаграмму, которая иллюстрирует данные, передаваемые и получаемые между ПК и принтером.
Фиг.22 представляет собой диаграмму, которая иллюстрирует внешний вид пользовательского интерфейса утилиты.
Фиг.23 представляет собой диаграмму, которая иллюстрирует пример диалогового окна с подробной информацией.
Фиг.24 представляет собой диаграмму, которая иллюстрирует схемы, используемые, когда утилита принимает информацию о рабочем состоянии принтера.
Фиг.25 представляет собой диаграмму, которая иллюстрирует пример схем и значений при перечислении информации о принтере.
Фиг.26 представляет собой диаграмму, которая иллюстрирует данные, передаваемые и получаемые между ПК и принтером.
Фиг.27 представляет собой блок-схему последовательности операций обработки, выполняемых утилитой, для получения информации о принтере.
Фиг.28 представляет собой диаграмму, которая иллюстрирует общий вид еще одной системы печати.
Фиг.29 представляет собой диаграмму, которая иллюстрирует общий вид еще одной системы печати.
Фиг.30 представляет собой блок-схему последовательности операций обработки, выполняемых утилитой, для получения информации о принтере.
Фиг.31 представляет собой диаграмму, которая иллюстрирует пример схем и значений при перечислении информации о принтере согласно обычному примеру.
Фиг.32 представляет собой диаграмму, которая иллюстрирует известный пример схем, используемых, когда утилита принимает информацию о принтере согласно обычному примеру.
Фиг.33 представляет собой диаграмму, которая иллюстрирует известный пример схем, используемых, когда утилита принимает информацию о принтере согласно обычному примеру.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Ниже со ссылкой на чертежи подробно описаны варианты осуществления настоящего изобретения, приведенные только в качестве примера. Следует отметить, что относительное расположение компонентов, числовые выражения и числовые значения, приведенные в этих вариантах осуществления, не ограничивают объем настоящего изобретения, если только явно не указано противное.
Первый вариант осуществления
<Описание общего вида системы печати>
На Фиг.1 показан общий вид системы печати согласно первому варианту осуществления настоящего изобретения. Как показано на Фиг.1, устройство обработки информации 1 (далее называемое в настоящем описании "ПК 1"), устройство обработки информации 2 (далее называемое в настоящем описании "ПК 2") и принтер 3 соединены с возможностью обмена данными через определенный коммуникационный канал. Кроме того, система печати снабжена основным программным модулем.
ПК 1 и ПК 2, соответственно, имеют конфигурацию аппаратных средств, аналогичную конфигурации аппаратных средств, относящихся к устройству обработки информации общего назначения, на которых, соответственно, инсталлирована определенная операционная система (далее в настоящем описании называемая "ОС"). В системе печати согласно данному варианту осуществления инсталлирован Windows (зарегистрированная торговая марка) XP корпорации Microsoft, США. При этом ПК 1 и ПК 2 соединены друг с другом при помощи сети 4, которая сконфигурирована в виде сети Ethernet (зарегистрированная торговая марка) и позволяет выполнять двусторонний обмен информацией.
Принтер 3 представляет собой типичный пример периферийного устройства. На Фиг.1 цветной струйный принтер соединен с ПК 1 при помощи универсальной последовательной шины (далее в настоящем описании называемой "USB").
Монитор 36 языка (далее в настоящем описании называемый "LM 36") формирует запрос принтеру 3 и выдает различные виды команд. К тому же, LM 36 имеет функцию приема различных видов информации, которая передается и позитивное уведомление о которой посылается из принтера 3. При помощи этой функции LM 36 заранее регистрирует событие для принтера 3 с определенными временными характеристиками таким образом, чтобы реализовать позитивное уведомление.
Модуль 5 двусторонней печати представляет собой пример опции принтера 3. В принтере 3 установлен модуль 5 двусторонней печати таким образом, чтобы выполнять автоматическую двустороннюю печать.
Компонент 6 формирования книжного формата представляет собой другой пример опции принтера 3. В принтере 3 установлен компонент 6 формирования книжного формата таким образом, чтобы выполнять обработку, относящуюся к формированию книжного формата.
Утилита 30 снабжена функцией приема и отображения различных видов информации об устройстве печати через LM 36, и/или выдачи различных видов команд в устройство печати, и/или формирования и выдачи данных для печати. В этом варианте осуществления утилита 30 может представлять собой утилиту, используемую для различных целей.
Следует отметить, что в вышеприведенном описании цветной струйный принтер рассматривается в качестве типичного примера периферийного устройства. Однако может быть рассмотрен другой вид приложения. То есть существуют другие периферийные устройства, которые могут быть использованы в этом варианте осуществления. А именно, в этом варианте осуществления могут быть использованы копировально-множительное устройство, устройство факсимильной связи, сканер, многофункциональное периферийное устройство, цифровая фотокамера, цифровая видеокамера, сотовый телефон, телевизионная приставка и проектор.
<Описание конфигурации аппаратных средств устройства обработки информации общего назначения>
Фиг.2 представляет собой блок-схему, которая иллюстрирует пример конфигурации аппаратных средств, относящихся к устройству обработки информации общего назначения.
Как показано на Фиг.2, ЦПУ 1204 реализовано с использованием микропроцессора и т.п. ЦПУ 1204 реализует программу, которая хранится на жестком диске HDD 1202. ЦПУ 1204 управляет каждым устройством (каждым блоком), который соединен с системной шиной 1206. ОЗУ 1201 функционирует в качестве основной памяти и рабочей области ЦПУ 1204. Клавиатура (KBD) 1203 представляет собой пример устройства ввода инструкций для ввода различных видов информации. При этом в качестве дополнения или альтернативы клавиатуре (KBD) может быть использована, например, мышь, жидкокристаллическая сенсорная панель. LCD 1205 представляет собой пример устройства отображения. LCD 1205 отображает символы, графические изображения, статические изображения и динамические изображения под управлением ЦПУ 1204. NB 1207 представляет собой сетевую плату, которая является примером модуля управления обменом данных. NB 1207 может управлять обменом данных согласно различным видам протоколов.
Кроме того, на HDD 1202 хранится программный код, позволяющий компьютеру реализовать обработку, соответствующую каждому этапу каждой блок-схемы последовательности операций, которые будут описаны ниже. Программный код считывается в ОЗУ 1201 для того, чтобы быть выполненным при помощи ЦПУ 1204.
<Описание аппаратных средств периферийного устройства>
Фиг.3 представляет собой блок-схему, которая иллюстрирует типичный пример конфигурации аппаратных средств периферийного устройства.
ЦПУ 15 реализовано с использованием микропроцессора и т.п. ЦПУ 15 представляет собой центральный процессорный модуль принтера 3 и выполняет различные виды обработки согласно программе, сохраненной в ПЗУ 16. ЦПУ 15 управляет каждым устройством, таким как ОЗУ 17, коммуникационный модуль 18 и модуль 19 записи, которые соединены друг с другом системной шиной. Следует отметить, что ПЗУ 16 может представлять собой память, которая включает в себя элемент энергонезависимой памяти. Например, вместо ПЗУ 16 могут использоваться жесткий диск или электрически стираемая флэш-память.
Кроме того, ПЗУ 16, ОЗУ 17 и модуль 19 записи более подробно описаны ниже.
ПЗУ 16 хранит программу, которая позволяет принтеру 3 выполнять обработку записи (печати) согласно входным данным для печати. Кроме того, ПЗУ 16 хранит программу выполнения обработки для передачи информации о состоянии при запросе статуса, осуществляемом ПК 1.
ОЗУ 17 хранит данные для печати, переданные из, например, ПК 1. Коммуникационный модуль 18 включает в себя коммуникационный порт для интерфейса 9 USB и управляет обменом информацией на основе USB.
Модуль 19 записи реализован с использованием секции записи и электрической схемы. Секция записи включает в себя записывающую головку струйного типа, чернила всех цветов, каретку и механизм перемещения бумаги для записи. Электрическая схема включает в себя ASIC, позволяющий записывающей головке генерировать импульсы для печати согласно данным для печати. Модуль 19 записи выполняет запись согласно данным для печати, которые временно хранит ОЗУ 17. Следует отметить, что в вышеприведенном описании в качестве примера ссылаются на периферийное устройство, включающее в себя блок вывода данных струйного типа. Однако может быть использован блок вывода данных другого типа. Например, может быть использован блок вывода данных типа электрофотографической системы или блок вывода данных типа системы термопечати. Кроме того, может быть использовано устройство управления жидкокристаллическим дисплеем, которое управляет работой жидкокристаллической дисплейной панели.
<Описание блок-схемы программного модуля в клиентском ПК>
На Фиг.4 показан пример блок-схемы программного модуля, работающего в ПК 1, который представляет собой устройство обработки информации.
Как показано на Фиг.4, драйвер 50 печати формирует команду визуализации согласно данным различных приложений, работающих под управлением ОС. В качестве формата команды визуализации могут быть использованы различные виды форматов при условии, что формат команды визуализации может быть декодирован и считан принтером. А именно, команда визуализации может быть реализована в виде несжатого изображения, сжатого изображения, языка описания страницы или данных XML. Кроме того, могут использоваться различные виды прикладного программного обеспечения. Например, могут использоваться Word корпорации Microsoft, Excel корпорации Microsoft и Photoshop от Adobe Systems, Inc.
Утилита 30 описана со ссылкой на Фиг.1. В качестве утилиты 30 может использоваться Notepad (Notepad.exe), который представляет собой текстовый редактор, поставляемый в качестве стандартного с ОС Windows (зарегистрированной торговой маркой) XP. К тому же утилита 30 может применяться, как показано на Фиг.12, который описан ниже.
Интерфейс графического устройства (GDI) 31 является частью ОС. Кроме того, очередь 32 печати является частью диспетчера 40 очереди печати. Очередь 32 печати образует очередь заданий на печать. Задания на печать, которые находятся в очереди 32 печати, отображаются в папке очереди печати (описание очереди печати здесь опущено) при помощи ОС таким образом, что пользователь может подтвердить различные виды состояний заданий на печать.
Процессор 33 печати изменяет формат печати и выполняет специальную обработку изображения для печати. Графический драйвер 34 представляет собой базовую часть для обработки изображений драйвером печати. То есть графический драйвер 34 выполняет обработку изображения для печати согласно команде визуализации, передаваемой из GDI 31, и формирует команду управления печатью. UI модуль 35 обеспечивает и управляет пользовательским интерфейсом драйвера принтера. LM 36 описан со ссылкой на Фиг.1. LM 36 имеет функцию управления передачей и получения данных в качестве коммуникационного интерфейса данных. Монитор 37 порта выполняет обработку для передачи данных, переданных из LM 36 в подходящий порт, и выполняет обработку для получения данных, переданных из принтера 3 через драйвер 38 класса. Драйвер 38 класса представляет собой модуль управления, который близок к физическому уровню. Драйвер 38 класса является эквивалентным, например, драйвер класса принтера USB. Драйвер 38 класса управляет портами USB.
<Описание потока обработки в системе печати>
Общий вид потока обработки в этом варианте осуществления описан со ссылкой на Фиг.5.
На Фиг.5 показан поток обработки для случая, когда модуль 5 двусторонней печати установлен в принтере 3 в системе, как показано со ссылкой на Фиг.1, в качестве примера.
Сначала в принтере 3 устанавливают модуль 5 двусторонней печати (этап S1). Принтер 3, используя модуль определения, которым снабжен принтер 3, определяет, что модуль 5 двусторонней печати установлен в принтере 3 (этап S2).
При этом асинхронно (т.е., с произвольными временными характеристиками) по отношению к определению на этапе S2, ПК 1 выдает команду запроса, запрашивая различные виды информации об устройстве печати в принтер 3 через интерфейс USB (этап S3).
Принтер 3 возвращает информацию о принтере в ПК 1 через коммуникационную среду в ответ на команду запроса, выданную из ПК 1 (этап S4). Информация, запрошенная из LM 36, включает в себя информацию о принтере и информацию о задании. Информация о принтере включает в себя, например, информацию о типе чернил, которые загружены в принтер 3, информацию об опциях, установленных в настоящее время в принтере 3, о состоянии ошибок в принтере 3 и состоянии питания принтера. Информация о задании включает в себя информацию о состоянии исполнения задания на печать в принтере 3.
LM 36 принимает информацию, возвращаемую из принтера 3, и анализирует принятую информацию. Согласно результату анализа LM 36 определяет, имеется ли изменение в информации, которая была принята ранее и сохранена. Если определено, что изменение имеется, то LM 36 преобразует информацию о состоянии после изменения в схему согласно определению схемы. Затем LM 36 сохраняет преобразованную информацию в модуле памяти (этап S5). Обработка на этапе S5 эквивалентна обработке при преобразовании и сохранении информации в формате для ответа на запрос для получения указывающей на изменение информации, выданный из утилиты. Здесь термин "схема" в общем случае означает описание базы данных, которое использует язык определения. Схема включает в себя в качестве типичного примера, схему XML.
Затем после сохранения информации, преобразованной в схему при помощи LM 36, LM 36 выдает уведомление о пути доступа к схеме в утилиту 30 (менеджер принтера), как показано на этапе S2404 на Фиг.7 (этап S6). Уведомление выполняется, например, через ОС.
При этом путь доступа к схеме указывает на информацию, при помощи которой LM 36 может идентифицировать данные схемы, хранящиеся в LM 36. Для метода описания пути доступа может быть использована информация, использующая знак которым определяется иерархия. Кроме того, может быть использован адрес данных схемы, который хранится как метод описания пути доступа или как указатель.
Как показано на Фиг.5, утилита 30 (менеджер принтера) отслеживает, имеется ли уведомление. При выдаче уведомления утилита 30 определяет через ОС, что имеется прерывание уведомления (этап S7).
Затем утилита 30 принимает путь доступа к схеме, к которому относится уведомление, как показано на этапе S2506 на Фиг.9. Здесь путь доступа к схеме представляет собой информацию, относящуюся к уведомлению. После этого схемы определяются в виде аргументов при вызове функции "IBidiSpl::SendRecv()" интерфейса прикладных программ (API) COM интерфейса "IBidiSpl".
Более конкретно, утилита 30 начинает процесс перечисления и приема информации о чернилах и состоянии чернил, о рабочем статусе, информации об аппаратных средствах, информации о модуле подачи бумаги, информации о модуле выдачи бумаги, системной информации и неизвестной информации, которая должна быть определена в будущем. После начала обработки утилита 30 выдает запрос в LM 36 на подробную информацию, используя схему (этап S8).
Затем, как описано на этапах S2603 и S2604, используя функцию "SendRecvBidiDataFromPort()" в LM 36, утилита 30 принимает (загружает) данные схемы, которые описывают подробную информацию о схеме, определенной в виде аргумента на этапе S2602, используя информацию, сохраненную в виде определения схемы на этапе S2403 на Фиг.7 (этап S9).
Затем, как показано на этапе S2605 на Фиг.10, LM 36 возвращает в утилиту 30 (менеджер принтера) подробную информацию (данные схемы), которую принимают на этапе S9, в виде аргумента функции "SendRecvBidiDataFromPort()" LM 36 и преобразуют в определение схемы (этап S10).
Затем утилита 30 (менеджер принтера) принимает подробную информацию (данные схемы), которая возвращается в виде определения схемы, формирует данные для отображения информации, как показано на Фиг.11, обновляет внешний вид пользовательского интерфейса, используя данные для отображения информации, которые отображаются таким образом (этап S11).
Ниже описан процесс приема информации, относящийся к устройству печати, который выполняется согласно системной конфигурации, конфигурации аппаратных средств и конфигурации программного обеспечения, как описано выше.
<Описание обработки услуги уведомления модулем слежения (LM 36)>
Фиг.6 представляет собой блок-схему последовательности операций процесса, реализующего услугу уведомления, выполняемую монитором языка (LM 36).
Сначала, в процессе активации ОС, LM 36 загружается и запускает услугу уведомления (этап S2301). Затем LM 36 принимает информацию, возвращаемую из принтера 3 согласно команде запроса (запрос информации) или регистрации события в принтере 3 через коммуникационный канал (кабель USB) (этап S2302). В качестве команды, которую LM 36 выдает в принтер 3 в это время, может быть использована, например, команда, соответствующая определению команды, которая уникально определяется в зависимости от производителя ОС. Затем LM 36 сохраняет принятую информацию (этап S2303). Далее LM 36 определяет, отличается ли информация от информации, которая сохранена ранее (этап S2304).
Если определено, что изменение имеется, то LM 36 передает измененную информацию в утилиту 30 в виде аргумента и затем уведомляет утилиту 30 (менеджер принтера) (этап S2305). Процесс, выполняемый здесь, эквивалентен процессу, который выполняется в отношении измененной информации. Затем процесс ожидает в течение заданного периода времени (например, в течение пяти секунд) (этап S2306), и процесс возвращается на этап S2302.
С другой стороны, если на этапе S2304 определено, что информация не отличается от ранее сохраненной информации, процесс переходит к этапу S2306, затем ожидает в течение заданного периода времени, и затем процесс возвращается к этапу S2303, как описано выше.
В этом случае, в процессе активации ОС, LM 36 выполняет уникальную услугу уведомления по приему информации из принтера 3 в данном интервале и выдает, если имеется изменение в информации, уведомление в утилиту 30 (менеджер принтера) таким образом, чтобы утилита 30 (менеджер принтера) могла быть уведомлена об изменении состояния принтера 3 по существу в режиме реального времени.
Фиг.7 представляет собой блок-схему последовательности операций, на которой подробно показан выполняемый монитором языка процесс уведомления утилиты об информации. При помощи этого процесса могут быть сохранены данные формата, которые позволяют ответить на запрос из утилиты для того, чтобы получить данные схемы, используя путь доступа к схеме.
Когда на этапе S2305 на Фиг.6 выполняется процесс уведомления утилиты 30 (менеджер принтера), как объяснено выше, процесс, как показано в блок-схеме последовательности операций по Фиг.7, вызывается для выполнения. Затем, как показано на Фиг.7, запускается процесс уведомления утилиты 30 (менеджер принтера) (этап S2401). Затем измененная информация, которая передается в виде аргумента на этапе S2305 на Фиг.6, подвергается преобразованию согласно определению схемы (этап S2402). Затем сохраняются все данные, преобразованные согласно определению схемы (этап S2403).
Затем утилиту 30 (менеджер принтера) уведомляют о пути доступа к преобразованным данным схемы (этап S2404), и процесс выполняет операцию возврата (этап S2405). Путь доступа к схеме описан, например, в виде " InkInfo", " StatusInfo" или " HardwareInfo". Кроме того, путь доступа к схеме описан в виде, например, " InputBinsInfo", " OutputBinsInfo", " SystemInfo" или " StatusInfo".
<Описание процесса преобразования в определение схемы, выполняемого монитором языка (LM 36)>
Фиг.8 представляет собой блок-схему последовательности операций, которая иллюстрирует процесс преобразования информации, выполняемый при помощи LM 36 согласно определению схемы. Когда на этапе S2402 на Фиг.7 выполняется процесс преобразования информации в определение схемы, вызывается этап S1501 на Фиг.8.
Затем, как показано на Фиг.8, запускается процесс преобразования информации в определение схемы, выполняемый при помощи LM 36 (этап S1501). После этого LM 36 подтверждает информацию о чернилах и состоянии чернил, о рабочем состоянии, информацию об аппаратных средствах, информацию о модуле подачи бумаги и информацию о модуле выдачи бумаги, которую в таком порядке принимает принтер 3 на этапе S2303 на Фиг.6 (этап S1502).
Если определено, что имеется какая-либо измененная информация (этап S1503), то измененная информация преобразуется в определение схемы (этап S1504). Затем определение схемы устанавливается в качестве возвращаемого значения (этап S1505), и процесс возвращается к этапу S1502. Если на этапе S1503 вся информация подтверждена и отсутствует информация, подлежащая преобразованию, то установленное возвращаемое значение возвращается и процесс возвращается в поток, показанный на Фиг.7 (этап S1506).
<Описание процесса, выполняемого утилитой>
Фиг.9 представляет собой блок-схему последовательности операций, которая иллюстрирует процесс получения метода приема информации о принтере 3 (пути доступа к схеме), выполняемого утилитой 30 (менеджер принтера).
Как показано на Фиг.9, в процессе активации утилиты 30 (этап S2501) разрешается получение прерывания уведомления услуги уведомления, выполняемой LM 36, как описано со ссылкой на Фиг.6 (этап S2502). Затем отображается основное окно (этап S2503). После этого выполняется цикл обработки сообщений, и процесс ожидает до тех пор, пока не выдается сообщение (до тех пор, пока не произойдет прерывание) (этап S2504).
Если происходит прерывание уведомления (этап S2505), которое передается из LM 36 в утилиту 30 (менеджер принтера) на этапе S2404 на Фиг.7, то утилита 30 принимает путь доступа к схеме, к которому относится уведомление (этап S2506).
Затем утилита 30 выполняет процесс приема и обновления информации на основании пути доступа к схеме, который был принят на этапе S2506 (этап S2507).
На этапе S2508 определяют, получил ли сообщение цикл обработки сообщений, выполненный на этапе S2504 (этап S2508). Если определено, что сообщение получено, определяют, является ли полученное сообщение сообщением "End" (этап S2509). Если определено, что полученное сообщение представляет собой сообщение "End", обработка заканчивает все процессы, выполняемые утилитой 30 (менеджер принтера), и завершает утилиту 30 (менеджер принтера) (этап S2511).
С другой стороны, если на этапе S2509 определено, что полученное сообщение не является сообщением "End", выполняется процесс, соответствующий каждому сообщению (их подробное описание здесь опущено) (этап S2510). Затем после этапа S2510 процесс возвращается к этапу S2505.
Если на этапе S2508 сообщение не получено, процесс возвращается к этапу S2505. Если на этапе S2505 прерывание уведомления не происходит, процесс переходит к этапу S2508.
<Прием и обновление информации согласно уведомлению>
Фиг.10 представляет собой блок-схему последовательности операций, которая иллюстрирует процесс приема и обновления информации согласно уведомлению. На Фиг.10 подробно показан этап S2507, описанный выше.
Как показано на Фиг.10, сначала утилита 30 (менеджер принтера) запускает процесс приема и обновления информации согласно уведомлению (этап S2601).
Затем процесс вызывает API функцию "IBidiSpl::SendRecv()" (функция, которую экспортирует диспетчер очереди печати) COM интерфейса "IBidiSpl", используя путь доступа, полученный с уведомлением из LM 36 на этапе S2404 на Фиг.7 в качестве аргумента.
Более конкретно, перечисляются информация о чернилах и состоянии чернил, о рабочем состоянии, информация об аппаратных средствах, информация о модуле подачи бумаги, информация о модуле выдачи бумаги, системная информация и неизвестная информация, которая должна быть определена в будущем.
Когда запускается процесс приема информации (этап S2602), функция "SendRecvBidiDataFromPort()", которую экспортирует LM 36, вызывается из диспетчера 40 очереди печати через интерфейсы печати и диспетчера очереди печати для запуска процесса с использованием этой функции (этап S2603).
Затем, используя функцию "SendRecvBidiDataFromPort()" в LM 36, принимают (загружают) схему, описывающую подробную информацию о схеме, которая определяется в виде аргумента на этапе S2602, используя информацию, сохраненную в виде определения схемы на этапе S2403 на Фиг.7 (этап S2604).
Затем подробная информация, которую преобразуют в определение схемы, как показано на Фиг.16, 20 и 25, которые описаны ниже, возвращается в виде аргумента функции "SendRecvBidiDataFromPort()". Затем обработка функции "SendRecvBidiDataFromPort()" из LM 36 завершается (этап S2605).
Затем утилита 30 (менеджер принтера) после возвращения из API функции "IBidiSpl::SendRecv()" принимает подробную информацию, которая возвращается в виде определения схемы в качестве аргумента (этап S2606), как показано на Фиг.16, 20 и 25, которые описаны ниже. Затем утилита 30 (менеджер принтера) формирует данные для отображения информации, как показано на Фиг.11 (этап S2607). Утилита 30 (менеджер принтера) обновляет содержимое, отображаемое в модуле 44 отображения информации о чернилах и модуле 45 отображения информации о принтере, как показано на Фиг.12, 18 и 22, которые описаны ниже, при помощи сформированных данных для отображения информации (этап S2608). Затем обработка возвращается в поток, показанный на Фиг.9 (этап S2609).
Таким образом, используя путь доступа к схеме, принятый из LM 36 на этапе S2506 на Фиг.9 в виде аргумента, и формируя запрос в LM 36, используя аргумент в том виде, в каком он существует, может быть принята подробная информация, определенная в пути доступа к схеме. То есть утилита 30 (менеджер принтера) может использовать эту схему, не обращая внимания на содержимое схемы, которая обрабатывается в виде аргумента, даже если схема представляет собой неизвестную схему, содержимое которой неизвестно. Кроме того, используя информацию, возвращенную из LM 36, утилита 30 может соответствующим образом и точно обновить содержимое дисплея при помощи модуля 44 отображения информации о чернилах и модуля 45 отображения информации о принтере. Таким образом, утилита 30 (менеджер принтера) не нуждается в модификации, даже если в принтер 3 добавляют новую функцию, и утилита 30 (менеджер принтера) может непрерывно использоваться в будущем в том виде, в котором она существует.
<Описание обработки формирования данных для отображения информации>
Фиг.11 представляет собой блок-схему последовательности операций, которая иллюстрирует процесс формирования данных для отображения информации. Когда процесс формирования данных для отображения информации выполняется на этапе S2607 на Фиг.10, вызывается этап S1601 на Фиг.11.
Сначала утилита 30 запускает процесс формирования данных для отображения информации (этап S1601). Затем утилита 30 пытается принять информацию о чернилах и состоянии чернил, о рабочем состоянии, информацию об аппаратных средствах, информацию о модуле подачи бумаги и информацию о модуле выдачи бумаги (этап S1602).
Затем, если утилита 30 может принять информацию (этап S1603), информацию устанавливают в виде возвращаемого значения (этап S1604), и затем процесс возвращается к этапу S1602. Если на этапе S1603 вся информация полностью принята и больше нет информации, предназначенной для приема, установленное возвращаемое значение возвращается и процесс возвращается в поток, показанный на Фиг.10 (этап S1605).
<Описание внешнего вида пользовательского интерфейса утилиты>
На Фиг.12 показан внешний вид пользовательского интерфейса утилиты 30.
Основное окно 42 включает в себя модуль 43 отображения принтера, модуль 44 отображения информации о чернилах и модуль 45 отображения информации о принтере. Модуль 43 отображения принтера отображает все принтеры, поддерживающие протокол, принтеры, с которыми утилита 30 может обмениваться информацией и которые находятся в состоянии возможности обмена информацией. Модуль 44 отображения информации о чернилах представляет собой часть, в которой отображается информация, относящаяся к различным видам чернил. Модуль 44 отображения информации о чернилах отображает информацию, относящуюся к чернилам, загруженным в принтер, который отмечен серым прямоугольником, показанным в модуле 43 отображения принтера.
Как показано на Фиг.12, в принтер 3 загружено семь чернил различных цветов. А именно, в принтер 3 загружены черные, голубые, пурпурные, желтые, фото черные, фото голубые и фото пурпурные чернила.
На Фиг.12 показано, что чернила имеют следующие имена: CI-B Black, CI-C Cyan, CI-M Magenta, CI-Y Yellow, CI-PB Photo Black, CI-PC Photo Cyan и CI-PM Photo Magenta, соответственно. Кроме того, на Фиг.12 показано, что состояниями чернил являются Full (оставшееся количество чернил: полное), Low (оставшееся количество чернил: низкое), Out (чернил не осталось), Full (оставшееся количество чернил: полное), Low (оставшееся количество чернил: низкое), Out (чернил не осталось) и Low (оставшееся количество чернил: низкое) соответственно.
Модуль 45 отображения информации о принтере представляет собой часть, в которой отображается информация, относящаяся к принтеру. Модуль 45 отображения информации о принтере отображает информацию, относящуюся к принтеру, который отмечен серым прямоугольником, показанным в модуле 43 отображения принтера.
Как показано на Фиг.12, в принтере 3 установлено 2 Мбайт памяти и жесткий диск 5 Гбайт. Кроме того, принтер 3 оборудован в виде опции модулем двусторонней печати, называемым "Auto Duplex Unit". Кроме того, принтер 3 оборудован устройством автоматической подачи бумаги, называемым "ASF-1" в качестве модуля подачи бумаги, лотком, называемым "Manual Tray", и кассетой, называемой "Cassette-1". К тому же, принтер 3 оборудован лотками, называемыми "Tray-1", "Tray-2" и "Tray-3". При этом принтер 3 находится в состоянии "Online".
На Фиг.12 в модуле 45 отображения информации о принтере отображаются информация о принтере и состоянии принтера (принтер 3) с названием модели "kmmn" от корпорации XYZ. Внешний вид каждого модуля 43 отображения принтера, модуля 44 отображения информации о чернилах и модуля 45 отображения информации о принтере может управляться по-разному согласно содержимому дисплея. Таким образом, все содержимое может быть верно отображено в различных случаях, не подвергаясь влиянию текущего состояния.
При этом обычная утилита может отображать только принтер от корпорации XYZ. Однако, как показано на Фиг.12, утилита согласно настоящему варианту осуществления в модуле 43 отображения принтера может отображать принтеры других корпораций, таких как корпорации ABC и корпорации DEF. То есть, как описано ниже, утилита 30 (менеджер принтера) настоящего изобретения также может принимать информацию о состоянии принтера другой корпорации, спецификация и содержимое которого неизвестны. Это происходит, поскольку информация о принтере и состоянии принтера может отображаться при условии, что принтер или монитор языка, который управляет принтером, имеет возможность возвращать информацию в утилиту 30 (менеджер принтера) через PPSI, используя BCS.
<Определение схемы, относящейся к информации о чернилах>
Фиг.13 представляет собой диаграмму, которая иллюстрирует схемы, используемые, когда утилита 30 принимает информацию о чернилах и состоянии чернил, загруженных в принтер. Схемы определяются в виде аргументов при вызове функции API "IBidiSpl::SendRecv()" COM интерфейса "IBidiSpl", который может быть использован в ОС Windows (зарегистрированная торговая марка) XP, когда утилита 30 принимает информацию о чернилах и состоянии чернил из принтера 3 посредством LM 36 через интерфейсы печати и диспетчера очереди печати.
Фиг.13 включает в себя содержимое, аналогичное содержимому, описанному со ссылкой на Фиг.32. На Фиг.13 содержимое, которое отличается от содержимого, описанного на Фиг.32, заключено в прямоугольник, выделенный пунктирной линией. На Фиг.13 "InkInfo" имеет тип узла "Property" и указывает на информацию, относящуюся к чернилам. Полный путь к "InkInfo" в схеме представляет собой " InkInfo". "[Color]" имеет тип узла "Property" и указывает на информацию, относящуюся к цвету. Полный путь к "[Color]" в схеме представляет собой " InkInfo.[Color]". Допустимые значения представляют собой любые из "Black", указывающее черное, "Cyan", указывающее голубое, "Magenta", указывающее пурпурное, "Yellow", указывающее желтое, "PhotoBlack", указывающее фото черное, "PhotoCyan", указывающее фото голубое, "PhotoMagenta", указывающее фото пурпурное, "Red", указывающее красное, "Green", указывающее зеленое, и "Blue", указывающее синее.
Если должна быть принята информация, касающаяся черных чернил, определяется " InkInfo.Black". "Installed" имеет тип узла "Value" и тип данных "Boolean" и указывает, загружены ли [Color] чернила. Полный путь к "Installed" в схеме представляет собой " InkInfo.[Color]:Installed". Допустимыми значениями являются "True", указывающее на то, что [Color] чернила загружены, и "False", указывающее на то, что [Color] чернила не загружены. "State" имеет тип узла "Value" и тип данных "String" и указывают на состояние, обозначающее оставшееся количество [Color] чернил. Полный путь к "State" в схеме представляет собой " InkInfo.[Color]:State". Допустимые значения представляют собой "Full", указывающее на то, что оставшееся количество [Color] чернил является полным, "Low", указывающее на то, что оставшееся количество [Color] чернил является низким, "Out", указывающее на то, что [Color] чернила закончились, и "Unknown", указывающее на то, что оставшееся количество [Color] чернил неизвестно. "Name" имеет тип узла "Value" и тип данных "String" и указывает на имя [Color] чернил. Полный путь к "Name" в схеме представляет собой " InkInfo.[Color]:Name". Допустимые значения представляют собой, например, строки ASCII символов, показанные в "Примерах" на Фиг.13. Таким образом, утилита 30 может принимать информацию о чернилах и состоянии загруженных чернил в принтер 3, используя схему, определенную на Фиг.13. Как можно видеть из сравнения с Фиг.32, на Фиг.13 новые чернила, такие как фото черные, фото голубые, фото пурпурные, красные, зеленые и синие добавлены в виде новой функции.
<Описание определения схемы, относящейся к информации об аппаратных средствах>
Фиг.14 представляет собой диаграмму, которая иллюстрирует схемы, используемые, когда утилита 30 принимает информацию об аппаратных средствах принтера. Схемы определяются в виде аргументов при вызове API функции "IBidiSpl::SendRecv()" COM интерфейса "IBidiSpl", которая может быть использована в ОС Windows (зарегистрированная торговая марка) XP, когда утилита 30 принимает информацию об аппаратных средствах из принтера 3 посредством LM 36 через интерфейсы печати и диспетчера очереди печати. Здесь информация, которая не может быть отображена при помощи обычной утилиты, заключена в прямоугольник, выделенный пунктирной линией. Часть, заключенная в прямоугольник, выделенный пунктирной линии на Фиг.14, указывает, что модуль двусторонней печати добавлен в виде опции.
На Фиг.14 "HardwareInfo" имеет тип узла "Property" и указывает на рабочее состояние. Полный путь к "HardwareInfo" в схеме представляет собой " HardwareInfo". Когда необходимо принять информацию об аппаратных средствах, определяется " HardwareInfo". "Memory" имеет тип узла "Value" и тип данных "Integer" и указывает на размер памяти, установленной в принтере. Полный путь к "Memory" в схеме представляет собой " HardwareInfo:Memory". Допустимые значения представляют собой целые числа (единица: Мбайт), которые указывают на размер памяти. Когда необходимо принять информацию о размере памяти, определяется " HardwareInfo:Memory". "HDD" имеет тип узла "Value" и тип данных "Integer" и указывает на размер жесткого диска, установленного в принтере. Полный путь к "HDD" в схеме представляет собой " HardwareInfo:HDD". Допустимыми значениями являются целые числа (единица: Гбайт), которые указывают на размер HDD. Когда необходимо принять информацию о размере HDD, определяется " HardwareInfo:HDD". "Option" имеет тип узла "Property" и указывает на тип опции. Полный путь к "Option" в схеме представляет собой " HardwareInfo.[Option]". Когда необходимо принять информацию о модуле двусторонней печати, определяется " HardwareInfo.DuplexUnit". "Installed" имеет тип узла "Value" и тип данных "Boolean" и указывает, установлена ли опция типа [Option]. Полный путь к "Installed" в схеме представляет собой " HardwareInfo.[Option]:Installed". Допустимые значения представляют собой "True", указывающее, что опция типа [Option] установлена, и "False", указывающее, что опция типа [Option] не установлена. "Name" имеет тип узла "Value" и тип данных "String" и указывает на имя опции типа [Option]. Полный путь к "Name" в схеме представляет собой " InkInfo.[Option]:Name". Допустимые значения представляют собой, например, строки ASCII символов, показанные в "Примерах" на Фиг.14. Здесь значения "Memory", "HDD", "Installed" и "Name" представляют собой значения, которые возвращаются в утилиту 30 из LM 36 или принтера 3. Таким образом, утилита 30 может принимать информацию об аппаратных средствах принтера 3 при помощи схемы, определенной на Фиг.14.
<Описание определения схемы, относящейся к модулю подачи бумаги принтера>
Фиг.15 представляет собой диаграмму, которая иллюстрирует схемы, используемые, когда утилита 30 принимает информацию, относящуюся к модулю подачи бумаги принтера. Схемы определяются в виде аргументов при вызове API функции "IBidiSpl::SendRecv()" COM интерфейса "IBidiSpl", которая может быть использована в ОС Windows (зарегистрированная торговая марка) XP, когда утилита 30 принимает информацию, относящуюся к модулю подачи бумаги принтера 3 посредством LM 36 через интерфейсы печати и диспетчера очереди печати. Здесь информация, которая не может быть отображена при помощи обычной утилиты, заключена в прямоугольник, выделенный пунктирной линией. Часть, заключенная в прямоугольник, выделенный пунктирной линией на Фиг.15, указывает, что модуль подачи бумаги, такой как лоток и кассета, является добавленной в виде новой функции.
На Фиг.15 "InputBinsInfo" имеет тип узла "Property" и указывает на информацию, относящуюся к модулю подачи бумаги. Полный путь к "InputBinsInfo" в схеме представляет собой " InputBinsInfo". "[Type]" имеет тип узла "Property" и указывает на тип модуля подачи бумаги. Полный путь к "[Type]" в схеме представляет собой " InputBinsInfo.[Type]". Допустимые значения представляют собой "ASF", указывающее на устройство автоматической подачи бумаги, "Tray", указывающее на лоток, и "Cassette", указывающее на кассету. Когда необходимо принять информацию, относящуюся к модулю подачи бумаги, относящемуся к устройству автоматической подачи бумаги, определяется " InputBinsInfo.ASF". "Installed" имеет тип узла "Value" и тип данных "Boolean" и указывает, установлен ли модуль подачи бумаги типа [Type]. Полный путь к "Installed" в схеме представляет собой " InputBinsInfo.[Type]:Installed". Допустимые значения представляют собой "True", указывающее, что модуль подачи бумаги типа [Type] установлен, и "False", указывающее, что модуль подачи бумаги типа [Type] не установлен. "Name" имеет тип "Value" и тип данных "String" и указывает на имя модуля подачи бумаги типа [Type]. Полный путь к "Name" в схеме представляет собой " InputBinsInfo.[Type]:Name". Допустимые значения представляют собой, например, строки ASCII символов, показанных в "Примерах" на Фиг.15. Здесь значения "Installed" и "Name" представляют собой значения, которые возвращаются в утилиту 30 из LM 36 или принтера 3. Таким образом, утилита 30 может принимать информацию о модуле подачи бумаги, установленном в принтер 3 при помощи схемы, определенной на Фиг.15.
<Определение связи между запросом при помощи утилиты и получаемого пути доступа к схеме>
Фиг.16 представляет собой диаграмму, которая иллюстрирует схему и значение при перечислении информации о чернилах и состоянии чернил, о рабочем состоянии, информации об аппаратных средствах, информации о модуле подачи бумаги и информации о модуле выдачи бумаги при помощи определения схемы, описанного выше. Фиг.16 включает в себя содержимое, аналогичное содержимому, которое описано со ссылкой на Фиг.31. На Фиг.16 содержимое, которое отличается от содержимого, описанного на Фиг.31, заключено в прямоугольник, выделенный пунктирной линией.
Как показано на Фиг.16, когда определяется каждый путь доступа к схеме при помощи утилиты 30 и вызывается функция "IBidiSpl::SendRecv()" (столбец "Query" (Schema)), схема (Retrieve (Schema)), которая описывает информацию о принтере и состоянии принтера 3 и значение (Retrieve (Value)) возвращаются в виде набора.
Путь доступа к схеме, который определяется при помощи утилиты 30, описан в виде, например, " InkInfo", " StatusInfo", " HardwareInfo", " InputBinsInfo" и " OutputBinsInfo".
В примере, как показано на Фиг.16, в принтер 3 загружены черные, голубые, желтые, фото черные, фото голубые и фото пурпурные чернила. Кроме того, состояния чернил представляют собой "оставшееся количество чернил: полное (Full)", "оставшееся количество чернил: низкое (Low)", "чернил не осталось (Out)", "оставшееся количество чернил: полное (Full)", "оставшееся количество чернил: низкое (Low)", "чернил не осталось (Out)" и "оставшееся количество чернил: низкое (Low)".
Кроме того, на Фиг.16 указано, что имена чернил представляют собой "CI-B Black", "CI-C Cyan", "CI-M Magenta", "CI-Y Yellow", "CI-PB Photo Black", "CI-PC Photo Cyan" и "CI-PM Photo Magenta".
Кроме того, на Фиг.16 указано, что рабочее состояние представляет собой "Online" и режим "Standby". Размер установленной памяти составляет 2 Мбайт и размер установленного жесткого диска составляет 5 Гбайт. К тому же, установлена опция модуля двусторонней печати, называемая "Auto Duplex Unit".
Дополнительно, на Фиг.16 указано, что устройство автоматической подачи бумаги, называемое "ASF-1", установлено в принтер в качестве модуля подачи бумаги и что также установлены лоток, называемый "Manual Tray", и кассета, называемая "Cassette-1". Кроме того, в принтер установлены лотки, называемые "Tray-1", "Tray-2" и "Tray-3". Таким образом, утилита 30 перечисляет информацию при помощи схемы, и утилита 30 может принимать всю подробную информацию о принтере, которая описывается данной схемой. Как можно видеть из сравнения с Фиг.11, фото черные, фото голубые и фото пурпурные чернила, опция модуля двусторонней печати и модуль подачи бумаги, такой как лоток "Manual Tray" и кассета "Cassette-1", добавлены в виде новой функции.
<Описание конкретного примера информации, принимаемой из принтера>
Фиг.17 представляет собой диаграмму, которая иллюстрирует данные, передаваемые и получаемые между ПК 1 и принтером 3. Данные, которые передаются и принимаются между ПК 1 и принтером 3, представляют собой двоичные данные. Однако для более легкого понимания на Фиг.17 данные представлены в виде текстовых данных после их преобразования в соответствии с кодом ASCII символов.
Как показано на Фиг.17, когда ПК 1 выдает команду, указанную в столбце "команда запроса, выдаваемая из ПК", в принтер 3 через интерфейс 9 USB, информация, указанная в столбце "информация, возвращаемая из принтера", возвращается в ПК 1 из принтера 3 через интерфейс 9 USB. На Фиг.17 "Ink;" указывает на команду запроса информации о чернилах и состоянии чернил. Здесь ответ, возвращаемый из принтера 3, описан в виде: "Color", "Model Name" и "State", "Black", "CI-B", "Full"; "Cyan", "CI-C", "Low"; "Magenta", "CI-M", "Out"; "Yellow", "CI-Y", "Full"; "PhotoBlack", "CI-PB", "Low"; "PhotoCyan", "CI-PC", "Out"; и "PhotoMagenta", "CI-PM", "Low", соответственно.
Кроме того, "Memory;" указывает на команду запроса памяти. Ответ, возвращаемый из принтера 3, содержит следующее "<size 2" (единица: Мбайт).
Дополнительно, "HDD;" указывает на команду запроса размера жесткого диска. Ответ, возвращаемый из принтера 3, содержит следующее: "5" (единица: Гбайт). К тому же, "Status;" указывает на команду запроса рабочего состояния. Ответ, возвращаемый из принтера, указывает "Online" в качестве рабочего состояния. "Option;" указывает на команду запроса опции. Ответ, возвращаемый из принтера 3, указывает, что установленная опция представляет собой "Auto Duplex Unit". Кроме того, "InputBins;" указывает на команду запроса модуля подачи бумаги. Ответ, возвращаемый из принтера 3, указывает, что информация о модуле подачи бумаги включает в себя "ASF-1", "Manual Tray" и "Cassette-1".
Дополнительно, "OutputBins;" указывает на команду запроса модуля выдачи бумаги. Ответ, возвращаемый из принтера 3, указывает, что модуль выдачи бумаги включает в себя "Tray-1", "Tray-2" и "Tray-3".
Фиг.17 указывает, что предусмотрены фото черные, фото голубые и фото пурпурные чернила, опция модуля двусторонней печати и модуль подачи бумаги, такой как лоток "Manual Tray" и кассета "Cassette-1".
Второй вариант осуществления
<Внешний вид пользовательского интерфейса утилиты 30>
Фиг.18 представляет собой диаграмму, которая иллюстрирует утилиту 30 согласно второму варианту осуществления. На Фиг.18 основное окно 42, модуль 43 отображения принтера, модуль 44 отображения информации о чернилах и модуль 45 отображения информации о принтере являются такими же, как показано на Фиг.12.
Следует отметить, что на Фиг.18 модуль 43 отображения принтера отображает принтер, который не показан на Фиг.12. Кроме того, на Фиг.18, модуль 44 отображения информации о чернилах и модуль 45 отображения информации о принтере отображают информацию о принтере и состоянии принтера с именем модели "model-D" от корпорации DEF.
Как можно видеть из содержимого, отображенного модулем 44 отображения информации о чернилах, в "model-D" от корпорации DEF загружены чернила семи цветов, а именно, черные, голубые, пурпурные, желтые, фото голубые, фото пурпурные и красные чернила.
Дополнительно, Фиг.18 указывает, что чернила имеют следующее название "DEF ink-b black", "DEF ink-c cyan", "DEF ink-m magenta", "DEF ink-y yellow", "DEF ink-pc photo cyan", "DEF ink-pm photo magenta" и "DEF ink-r red", соответственно.
Кроме того, Фиг.18 указывает, что состояния чернил представляют собой "Low (оставшееся количество чернил: низкое)", "Full (оставшееся количество чернил: полное)", "Full (оставшееся количество чернил: полное)", "Out (чернил не осталось)", "Low (оставшееся количество чернил: низкое)", "Out (чернил не осталось)" и "Full (оставшееся количество чернил: полное)", соответственно.
Как видно из содержимого, которое отображено в модуле 45 отображения информации о принтере, в "model-D" от корпорации DEF установлены 10-Мбайт память, 20-Гбайт жесткий диск и модуль двусторонней печати, называемый "duplex unit". Кроме того, в "model-D" установлено устройство автоматической подачи бумаги, называемое "asf-A" в качестве модуля подачи бумаги, и кассеты, называемые "cassette-A" и "cassette-B". К тому же, в "model-D" установлены лотки, называемые "tray-A", "tray-B", "tray-C" и "tray-D". Здесь "model-D" находится в состоянии "Online". Как можно видеть из сравнения с Фиг.12, "model-D" от корпорации DEF оборудован компонентом формирования книжного формата, называемым "auto book maker", функцией, которой не оборудован "kmmn" (принтер 3) от корпорации XYZ. Таким образом, согласно настоящему варианту осуществления, даже если принтер оборудован новой функцией, нет необходимости в модификации утилиты 30 (менеджер принтера) в соответствии с новой функцией.
На Фиг.19 показаны схемы, которые используются, когда утилита 30 принимает системную информацию о принтере. Схемы используются, когда утилита 30 принимает системную информацию из принтера 3 посредством LM 36 через интерфейсы печати и диспетчера очереди печати. Более конкретно, схемы определяются в виде аргументов при вызове API функции "IBidiSpl::SendRecv()" COM интерфейса "IBidiSpl", который может быть использован в ОС Windows (зарегистрированная торговая марка) XP.
На Фиг.19 "SystemInfo" имеет тип узла "Property" и указывает на системную информацию. Полный путь к "SystemInfo" в схеме представляет собой " SystemInfo". Кода должна быть принята системная информация, определяется " SystemInfo".
"Component" имеет тип узла "Property" и указывает на тип компонента, который входит в состав системы. Полный путь к "Component" в схеме представляет собой " SystemInfo.[Component]". Допустимое значение представляет собой "BookMaker", которое указывает на компонент формирования книжного формата. Когда необходимо принять информацию, относящуюся к компоненту формирования книжного формата, определяется " .SystemInfo.BookMaker". "Installed" имеет тип узла "Value" и тип данных "Boolean" и указывает, установлен ли компонент типа [Component]. Полный путь к "Installed" в схеме представляет собой " SystemInfo.[Component]:Installed". Допустимые значения представляют собой "True", указывающее, что компонент типа [Component] установлен, и "False", указывающее, что компонент типа [Component] не установлен.
"Name" имеет тип узла "Value" и тип данных "String" и указывает на имя компонента типа [Component]. Полный путь к "Name" в схеме представляет собой " SystemInfo.[Component]:Name". Допустимые значения представляют собой, например, строки ASCII символов, показанные в "Примерах" на Фиг.19.
Здесь значения "Installed" и "Name" представляют собой значения, которые возвращаются в утилиту 30 из LM 36 или принтера 3. Таким образом, утилита 30 может принимать системную информацию о принтере 3, используя схему, определенную на Фиг.19.
Фиг.20 представляет собой диаграмму, которая иллюстрирует схему и значение при перечислении информации о чернилах и состоянии чернил, о рабочем состоянии, информации об аппаратных средствах, информации о модуле подачи бумаги, информации о модуле выдачи бумаги и системной информации при помощи схем, определенных на Фиг.13-15 и 19. Фиг.20 включает в себя содержимое, аналогичное содержимому, описанному со ссылкой на Фиг.31 и 16. На Фиг.20 определение схемы, которое отличается от определения схемы, описанной на Фиг.31 и 16, заключено в прямоугольник, выделенный пунктирной линией.
Как показано на Фиг.20, определяется каждый путь доступа к схеме из утилиты 30 и вызывается функция "IBidiSpl::SendRecv()". Путь доступа к схеме описан в виде, например, " InkInfo", " StatusInfo", " HardwareInfo", " InputBinsInfo", " OutputBinsInfo" и " SystemInfo".
Затем в столбце "Query" (Schema) схема ("Retrieve" (Schema)), которая описывает информацию о "model-D" и состоянии "model-D" от корпорации DEF, и значение ("Retrieve" (Value)) возвращаются в виде набора. Пример, показанный на Фиг.20, показывает, что загружен "model-D" от корпорации DEF с черными, голубыми, пурпурными, желтыми, фото голубыми, фото пурпурными и красными чернилами. Кроме того, Фиг.20 указывает, что состояние оставшегося количества чернил каждого цвета представляет собой "Low (оставшееся количество чернил: низкое)", "Full (оставшееся количество чернил: полное)", "Full (оставшееся количество чернил: полное)", "Out (чернил не осталось)", "Low (оставшееся количество чернил: низкое)", "Out (чернил не осталось)" и "Full (оставшееся количество чернил: полное)" соответственно. К тому же, Фиг.20 указывает, что имя каждого типа чернил является следующим "DEF ink-b black", "DEF ink-c cyan", "DEF ink-m magenta", "DEF ink-y yellow", "DEF ink-pc photo cyan", "DEF ink-pm photo magenta" и "DEF ink-r red" соответственно.
Дополнительно Фиг.20 указывает, что рабочее состояние представляет собой "Online" и находится в режиме "Standby". Размер установленной памяти составляет 10 Мбайт, и размер установленного жесткого диска составляет 20 Гбайт. Кроме того, установлена опция модуля двусторонней печати, называемая "duplex unit". К тому же, Фиг.20 указывает, что устройство автоматической подачи бумаги, называемое "asf-A", установлено в виде модуля подачи бумаги и что также установлены кассеты, называемые "cassette-A" и "cassette-B". Кроме того, установлены лотки, называемые "Tray-A", "Tray-B", "Tray-C" и "Tray-D". Дополнительно Фиг.20 указывает, что установлен компонент формирования книжного формата, называемый "auto book maker".
Таким образом, утилита 30 перечисляет информацию, используя схему, и утилита 30 может принимать всю подробную информацию о принтере, которая описывается при помощи схемы. Как можно видеть из сравнения Фиг.31 и 16, красные чернила и компонент формирования книжного формата добавлены в виде новой функции.
Фиг.21 представляет собой диаграмму, которая иллюстрирует данные, отправляемые и получаемые между ПК 1 и принтером 3. Данные, которые отправляются и принимаются между ПК 1 и принтером 3, представляют собой двоичные данные. Однако для облегчения понимания на Фиг.21 данные представлены в виде текстовых данных после их преобразования в соответствии с кодом ASCII символов. Как показано на Фиг.21, когда ПК 1 выдает команду, указанную в столбце "команда запроса, выдаваемая из ПК", в "model-D" от корпорации DEF через интерфейс USB, то информация, указанная в столбце "информация, возвращаемая из принтера", возвращается в ПК из "model-D" через интерфейс USB.
На Фиг.21 "ReqInk;" указывает на команду запроса информации о чернилах и состоянии чернил. Здесь запрос, возвращаемый из принтера 3, описан в виде "Color", "Model Name" и "State", "Black", "ink-b", "Low"; "Cyan", "ink-c", "Full"; "Magenta", "ink-m", "Full"; "Yellow", "ink-y", "Out"; "PhotoCyan", "ink-pc", "Low"; "PhotoMagenta", "ink-pm", "Out"; и "Red", "ink-r", "Full" соответственно.
Кроме того, "ReqMemory;" указывает на команду запроса размера памяти. Ответ, возвращаемый из принтера 3, содержит следующее "10" (единица: Мбайт). Дополнительно "ReqHDD;" указывает на команду запроса размера жесткого диска. Ответ, возвращаемый из принтера 3, содержит следующее "20" (единица: Гбайт).
Кроме того, "ReqStatus;" указывает на команду запроса рабочего состояния. Ответ, возвращаемый из принтера 3, указывает "Online" в качестве рабочего состояния. "ReqOption;" указывает на команду запроса опции. Ответ, возвращаемый из принтера 3, указывает, что установленная опция представляет собой "duplex unit". Дополнительно "ReqInputBins;" указывает на команду запроса модуля подачи бумаги. Ответ, возвращаемый из принтера 3, указывает, что информация о модуле подачи бумаги включает в себя "asf-A", "cassette-A" и "cassette-B".
Дополнительно "ReqOutputBins;" указывает на команду запроса модуля выдачи бумаги. Ответ, возвращаемый из принтера 3, указывает, что модуль выдачи бумаги включает в себя "tray-A", "tray-B", "tray-C" и "tray-D". Кроме того, "ReqSystem;" указывает на команду для запроса системы. Ответ, возвращаемый из принтера 3, указывает, что система (компонент) представляет собой "auto book maker".
На фиг.20 имя чернил возвращается при помощи описания такого, что, например, "Retrieve (Schema)" представляет собой " InkInfo.Black:Name" и "Retrieve (Value)" представляет собой "DEF ink-b black".
Согласно обработке при помощи монитора языка от корпорации DEF на основании данной информации описывается, что "команда запроса, выдаваемая из ПК", представляет собой "ReqInk;", и "информация, возвращаемая из принтера", представляет собой "AnsInk:black.ink-ink-r.Full;". Здесь, монитор языка от корпорации DEF формирует имя чернил на основании "информации, возвращаемой из принтера", и возвращает сформированное имя чернил в утилиту 30.
Таким образом, монитор языка (LM 36) может выполнять обработку таким образом, что информация, принимаемая из принтера (принтер 3), возвращается в менеджер принтера (утилиту 30) путем преобразования полученной информации в подходящую информацию без возвращения принятой информации в утилиту 30 в том виде, в каком она существует.
Третий вариант осуществления
Фиг.22 представляет собой диаграмму, которая иллюстрирует внешний вид отображения пользовательского интерфейса утилиты 30 согласно третьему варианту осуществления. В третьем варианте осуществления изменена часть спецификации модуля 45 отображения информации о принтере утилиты 30, показанная на Фиг.22 и 18. На Фиг.22 основное окно 42, модуль 43 отображения принтера и модуль 44 отображения информации о чернилах являются аналогичными, показанными на Фиг.12 и 18. Следует отметить, что на Фиг.22 модуль 43 отображения принтера отображает принтер, который не показан на Фиг.12. Кроме того, на Фиг.22 модуль 44 отображения информации о чернилах и модуль 45 отображения информации о принтере отображают информацию о принтере и состоянии принтера при помощи модели, называемой "model-D" от корпорации DEF.
В модуле отображения состояния (Status:), находящемся внутри модуля 45 отображения информации о принтере, отображается сообщение "Error". Оно отображается, поскольку из принтера пришло уведомление об информации, указывающей на ошибку. Например, на Фиг.18, если приходит уведомление об информации, указывающей на ошибку, утилита 30 вызывает модуль отображения состояния (Status:), показанный на Фиг.18, с тем, чтобы отобразить сообщение "Error", которое является тем же самым, что и на Фиг.22.
На Фиг.22 кнопка 46 отображения подробной информации (Detail) представляет собой часть, характерную для третьего варианта осуществления. Таким образом, существуют ситуации, в которых если определяется новая схема, описывающая предупреждающее сообщение или ошибку, заключенную в прямоугольник, выделенный пунктирной линией, как показано на Фиг.24, то существует информация, которая не может быть полностью отображена в модуле отображения состояния. Кнопка 46 отображения подробной информации становится активной и выделенной, когда существует информация, которая не может быть полностью отображена, или когда необходимо отобразить подробную информацию. Кнопка 46 отображения подробной информации становится неактивной в других случаях и окрашивается в таких случаях в серый цвет. Кроме того, когда происходит уведомление об информации, указывающей на предупреждающее сообщение или ошибку, кнопка 46 отображения подробной информации может подсвечиваться или мигать желтым или красным цветом. Когда кнопка 46 отображения подробной информации является активной и нажатой, отображается диалоговое окно с подробной информацией, как показано на Фиг.23.
Фиг.23 представляет собой диаграмму, которая иллюстрирует пример диалогового окна с подробной информацией. Как показано на Фиг.23, диалоговое окно 47 с подробной информацией отображается, когда нажата кнопка 46 отображения подробной информации, как показано на Фиг.22. В модуле 48 отображения подробной информации отображается подробная информация о рабочем состоянии принтера. В модуле 48 отображения подробной информации отображается информация, как описано в "Примерах:" определения "Detail" на Фиг.24. Когда нажата кнопка 49 OK, диалоговое окно с подробной информацией закрывается и отображение возвращается к основному окну 42, показанное на Фиг.22.
Фиг.24 представляет собой диаграмму, которая иллюстрирует схемы, используемые, когда утилита 30 принимает информацию о рабочем состоянии принтера. Схемы определяются в виде аргументов при вызове API функции "IBidiSpl::SendRecv()" COM интерфейса "IBidiSpl", который может быть использован в ОС Windows (зарегистрированная торговая марка) XP, когда утилита 30 принимает информацию о рабочем состоянии принтера 3 (принтер) посредством LM 36 (монитор языка) через интерфейсы печати и диспетчера очереди печати. Здесь информация, которая не может быть отображена при помощи обычной утилиты, заключена в прямоугольник, выделенный пунктирной линией. Фиг.24 включает в себя содержимое, аналогичное содержимому, описанному со ссылкой на Фиг.7, и содержимое, которое отличается от содержимого, показанного на Фиг.32, заключено в прямоугольник, выделенный пунктирной линией.
На Фиг.24 "StatusInfo" имеет тип узла "Property" и указывает на рабочее состояние. Полный путь к "StatusInfo" в схеме представляет собой " StatusInfo". "[Type]" имеет тип узла "Property" и указывает на тип рабочего состояния. Полный путь к "[Type]" в схеме представляет собой " StatusInfo.[Type]". Допустимые значения представляют собой "Online", указывающее на состояние онлайн, "Offline", указывающее на состояние офлайн, "Printing", указывающее на состояние печати, "Warning", указывающее на предупреждающее сообщение, и "Error", указывающее на ошибку. Когда необходимо принять информацию, относящуюся к рабочему состоянию принтера в состоянии онлайн, определяется " StatusInfo.Online".
"Detail" имеет тип узла "Value" и тип данных "String" и указывает на подробную информацию о рабочем состоянии типа [Type]. Полный путь к "Detail" в схеме представляет собой " StatusInfo.[Type]:Detail". Допустимые значения представляют собой, например, строки ASCII символов, показанных в "Примерах" на Фиг.24. Значение "Detail" представляет собой значение, которое возвращается из принтера 3 (принтер) или LM 36 (монитора языка) в утилиту 30. Таким образом, утилита 30 может принимать информацию о рабочем состоянии принтера 3 (принтер) при помощи схемы, определенной на Фиг.24.
Фиг.25 представляет собой диаграмму, которая иллюстрирует схему и значение при перечислении информации о чернилах и состоянии чернил, о рабочем состоянии, информации об аппаратных средствах, информации о модуле подачи бумаги, информации о модуле выдачи бумаги и системной информации при помощи схем, определенных на Фиг.13-15, 19 и 24. Фиг.25 включает в себя содержимое, аналогичное содержимому, описанному со ссылкой на Фиг.31, 16 и 20. На Фиг.25 содержимое, которое отличается от содержимого, показанного на Фиг.20, заключено в прямоугольник, выделенный пунктирной линией. Как показано на Фиг.25, отображается содержимое, отличное от содержимого на Фиг.20.
Как показано на Фиг.25, когда определяется путь доступа к схеме " StatusInfo" при помощи утилиты 30 и вызывается функция "IBidiSpl::SendRecv()" (в столбце "Query" (Schema)), схема (Retrieve (Schema)), которая описывает информацию о "model-D" и состоянии "model-D" от корпорации DEF, и значение (Retrieve (Value)) возвращаются в виде набора. На Фиг.25 показан пример случая, в котором "model-D", который находится в состоянии онлайн и режиме ожидания, как показано на Фиг.20, переходит в состояние с ошибкой "бумага отсутствует".
Фиг.26 представляет собой диаграмму, которая иллюстрирует данные, передаваемые и получаемые между ПК и принтером 3. Данные, которые передаются и принимаются между ПК и принтером 3, представляют собой двоичные данные. Однако для облегчения понимания на Фиг.26 данные представлены в виде текстовых данных после их преобразования в соответствии с кодом ASCII символов. Фиг.26 включает в себя содержимое, аналогичное содержимому, описанному со ссылкой на Фиг.21. На Фиг.26 содержимое, которое отличается от содержимого, показанного на Фиг.21, заключено в прямоугольник, выделенный пунктирной линией. Со ссылкой на Фиг.26 описано содержимое, отличное от содержимого, показанного на Фиг.21.
Как показано на Фиг.26, когда ПК выдает команду, указанную в столбце "команда запроса, выдаваемая из ПК" в "model-D" от корпорации DEF через интерфейс USB, информация, указанная в столбце "информация, возвращаемая из принтера", возвращается в ПК из "model-D" через интерфейс USB. Относительно этой информации "ReqStatus;" указывает на команду запроса рабочего состояния, и ответ на команду указывает на ошибку "бумага отсутствует", указывающую, что бумага не загружена.
Фиг.27 представляет собой блок-схему последовательности операций обработки при помощи утилиты 30 (менеджер принтера) согласно третьему варианту осуществления.
Как показано на Фиг.27, когда утилита 30 активируется (этап S3601), разрешается прерывание услуги уведомления, выполняемой при помощи LM 36 (монитора языка), как показано на Фиг.6 (этап S3602). Затем утилита 30 отображает основное окно, как показано на Фиг.22 (этап S3603), и выполняет цикл обработки сообщений (этап S3604). На этапе S3605 утилита 30 определяет, произошло ли прерывание при помощи уведомления, переданного из LM 36 (монитор языка) в утилиту 30 (менеджер принтера) на этапе S2404 на Фиг.7. Если определено, что на этапе S3605 произошло прерывание уведомления, то утилита 30 принимает и сохраняет путь доступа к схеме, к которому относится уведомление, а именно информацию, относящуюся к уведомлению (этап S3606). Затем утилита 30 выполняет обработку приема и обновления информации согласно уведомлению, именно так, как описано со ссылкой на Фиг.10 (этап S3607).
Утилита 30 (менеджер принтера) определяет, получил ли сообщение выполняемый цикл обработки сообщений на этапе S3604 (этап S3608). Если определено, что полученное сообщение представляет собой сообщение "End" (этап S3609), вся обработка при помощи утилиты 30 (менеджер принтера) заканчивается, и процесс завершает утилиту 30 (этап S3613).
Если на этапе S3609 определено, что полученное сообщение не является сообщением "End", утилита 30 определяет, нажата ли кнопка 46 отображения подробной информации на этапе S3610. Этот этап определения позволяет определить, приняла ли утилита 30 информацию, которую сохраняет LM 36, используя путь доступа к схеме (метод приема), который должен быть принят из LM 36. Затем, если определено, что кнопка 46 отображения подробной информации нажата (этап S3610), загружается "StatusInfo" схемы " StatusInfo", которая была сохранена на этапе S3606, (этап S3611), и затем обработка переходит к этапу S3607.
Если на этапе S3610 определено, что полученное сообщение является сообщением, отличающимся от сообщения, которое указывает на то, что кнопка 46 отображения подробной информации нажата, выполняется обработка, соответствующая каждому сообщению (подробное описание обработки здесь опущено) (этап S3612), и обработка возвращается на этап S3605.
Если на этапе S3608 определено, что сообщение не получено, обработка возвращается на этап S3605. Если на этапе S3605 определено, что прерывание уведомления не произошло, обработка переходит к этапу S3608.
Таким образом, когда сообщение, указывающее, что кнопка 46 отображения подробной информации нажата, то есть когда кнопка 46 отображения подробной информации нажата, утилита 30 (менеджер принтера) принимает информацию о рабочем состоянии принтера 3 (принтер) из LM 36 (монитора языка). Таким образом, менеджер принтера (утилита 30) не пытается принять ненужную информацию из LM 36 (монитор языка). То есть утилита 30 может принимать необходимую информацию надлежащим образом только на основании "необходимости доступа к специальной информации" для того, чтобы улучшить эффективность обработки и улучшить качество продукта печати.
На Фиг.28 показан общий вид другой системы печати. На Фиг.28 показан случай, при котором принтер 7, выполненный с возможностью работы в сети, соединен с сетью 4 системы управления периферийными устройствами, как показано на Фиг.1. На Фиг.28 утилита 30 (менеджер принтера), используемая в ПК 2, может отображать информацию о чернилах и состоянии чернил принтера 7, выполненного с возможностью работы в сети. Часть обработки, относящаяся к настоящему варианту осуществления, которая может быть выполнена при помощи LM 36 в ПК 1, вместо этого выполняется принтером 7, выполненным с возможностью работы в сети. Здесь такая часть обработки предусмотрена во встроенном программном обеспечении принтера 7 для выполнения обработки. Кроме того, монитор языка, относящийся к ПК 2, который управляет принтером 7, выполненным с возможностью работы в сети, выполняет обработку услуги уведомления, как показано на Фиг.6, для выполнения этой части обработки. Таким образом, часть обработки, относящаяся к настоящему варианту осуществления, предусмотрена во встроенном программном обеспечении принтера, а не в LM 36, и таким образом принтер может выполнять эту часть обработки без использования LM 36 для достижения такого же эффекта.
Фиг.29 представляет собой блок-схему, которая иллюстрирует часть системы управления периферийными устройствами, реализованную с использованием устройства обработки информации и периферийного устройства. На Фиг.29 показан случай, когда система управления периферийными устройствами, как показано на Фиг.1, не реализована в сети 4, но реализована в коммуникационной среде с локальным портом, выполненной с использованием только ПК и принтера.
На Фиг.29 утилита 10 инсталлирована в ПК 1. Утилита 10 представляет собой утилиту, аналогичную утилите 30, инсталлированной в ПК 2. Таким образом, интерфейсы печати и диспетчера очереди печати сконфигурированы между утилитой 10 и LM 36. Обмен данными, как описано в каждом вышеупомянутом варианте осуществления, может выполняться между утилитой 10 (менеджер принтера) и LM 36 через интерфейсы печати и диспетчера очереди печати.
В вышеприведенном описании объясняется пример, в котором утилита 30 отслеживает информацию о чернилах и состоянии чернил, загруженных в принтер 3, информацию о рабочем состоянии периферийного устройства, предупреждающее сообщение, состояние ошибок и состояние, описывающее установленные опции. Однако настоящее изобретение этим не ограничено. Настоящее изобретение может быть эффективно использовано при приеме любой информации, относящейся к принтеру.
Кроме того, в вышеприведенном описании настоящее изобретение реализовано при помощи схемы двусторонней связи через интерфейсы печати и диспетчера очереди печати. Однако настоящее изобретение этим не ограничено. Например, настоящее изобретение может быть реализовано путем использования протокола, имеющего функции, аналогичные вышеописанным функциям, таким как MIB и "режим универсальной динамической настройки конфигурации" (UPnP). Кроме того, при реализации настоящего изобретения путем использования стандартной спецификации может быть легко получена более универсальная система. Кроме того, в вышеописанных вариантах осуществления цветной струйный принтер используется в качестве иллюстративного принтера. Однако настоящее изобретение этим не ограничено. Например, может быть использован любой принтер, такой как монохромный LBP. К тому же, персональный компьютер относится к клиентскому компьютеру и компьютеру сервера. Однако настоящее изобретение этим не ограничено. Например, настоящее изобретение может быть эффективно реализовано путем использования любого терминала, который может быть использован подобным образом, как описано выше, такого как DVD видеоплейер, игровой автомат, телеприставка и домашнее приложение, выполненное с возможностью работы в Интернете.
Кроме того, в вышеописанных вариантах осуществления принтер относится к иллюстративному периферийному устройству. Однако настоящее изобретение этим не ограничено. То есть в настоящем изобретении может быть использовано другое периферийное устройство, такое как копировально-множительное устройство, устройство факсимильной связи, сканер, цифровая камера и устройство, снабженное комбинацией указанных функций. К тому же, в вышеприведенных вариантах осуществления в качестве ОС используется Windows (зарегистрированная торговая марка) XP. Однако настоящее изобретение этим не ограничено. То есть в настоящем изобретении может быть использована любая ОС. Дополнительно Ethernet (зарегистрированная торговая марка) используется в качестве примера конфигурации сети 4. Однако сеть может иметь любую другую конфигурацию. Кроме того, интерфейс USB используется в качестве интерфейса между ПК 1 и принтером 3. Однако настоящее изобретение этим не ограничено. То есть может использоваться любой интерфейс, такой как Ethernet (зарегистрированная торговая марка), беспроводная LAN, шина IEEE 1394, Bluetooth, IrDA, параллельный или последовательный интерфейс.
Четвертый вариант осуществления
В каждом из вышеописанных вариантов осуществления временные параметры, с которыми утилита 30 (менеджер принтера) принимает путь доступа к схеме, основаны на уведомлении от нижележащего уровня (LM 36 и принтер 3), как показано на этапе S2505 на Фиг.9 и этапе S3605 на Фиг.27. Однако более приемлемыми могут быть временные параметры, с которыми утилита 30 получает путь доступа к схеме (метод приема).
Например, временные параметры могут быть выбраны таким образом, чтобы разрешить прерывание в утилите 30 и чтобы утилита 30 периодически выдавала запрос в LM 36 или принтер 3 относительно того, принят ли путь доступа. Кроме того, временные параметры могут быть выбраны таким образом, что для приема пути доступа в UI утилиты 30 предусмотрена кнопка, и если имеется сообщение, указывающее на то, что кнопка нажата, то LM 36 или принтер 3 принимают из утилиты 30 сообщение о желании получить новый путь доступа (метод приема).
Фиг.30 представляет собой блок-схему последовательности операций обработки, выполняемой при помощи утилиты 30 согласно четвертому варианту осуществления.
Следует отметить, что опущено подробное описание обработки на этапе S3006, поскольку обработка аналогична обработке, описанной в блок-схеме последовательности операций, показанной на Фиг.10, описанной в вышеупомянутом варианте осуществления. Блок-схема последовательности операций на Фиг.30 будет описана более подробно ниже.
Как показано на Фиг.30, когда на этапе S3001 активируется менеджер принтера, основное окно, показанное на Фиг.5, отображается на этапе S3002. Затем, каждые 5 секунд запускается обработка событий прерывания, и после этого выполняется цикл обработки сообщений на этапе S3004.
Затем на этапе S3005 определяют, произошло ли событие прерывания. Если определено, что событие прерывания произошло, информацию, показанную на Фиг.14, принимают и обновляют на этапе S3006. На этапе S3007 определяют, получено ли сообщение циклом обработки сообщений, выполняемым на этапе S3004. Затем на этапе S3008 определяют, является ли полученное сообщение сообщением "End". Если определено, что полученное сообщение является сообщением "End" на этапе S3008, то на этапе S3010 вся обработка при помощи менеджера принтера завершается. С другой стороны, если на этапе S3008 определено, что полученное сообщение является отличным от сообщения "End", выполняется обработка, соответствующая каждому сообщению (этап S3009), и затем обработка возвращается на этап S3005. Если сообщение не получено на этапе S3007, обработка возвращается на этап S3005. Если прерывание не произошло на этапе S3005, обработка переходит на этап S3007.
Пятый вариант осуществления
Кроме того, при получении пути доступа, который представляет собой метод приема схемы, путь доступа записывается в файл и сохраняется в виде, в котором путь доступа может быть повторно использован при перезагрузке ПК, и затем этот путь доступа использует менеджер принтера. Таким образом, дополнительно может быть улучшено удобство использования утилиты 30.
Другие варианты осуществления
Настоящее изобретение также может быть реализовано путем предоставления системы или устройства, содержащего среду хранения данных, на которую записывают программный код программного обеспечения, реализующего функции вариантов осуществления, и при помощи считывания и исполнения программного кода, сохраненного на среде хранения данных, компьютером системы или устройства (ЦПУ или МПУ). При этом программный код программного обеспечения, который реализует каждую функцию, как показано в каждой блок-схеме последовательности операций вариантов осуществления, записан на среде хранения данных.
В этом случае программный код сам по себе, который считывают со среды хранения данных, реализует функции вышеупомянутых вариантов осуществления, и соответственно, программный код и/или среда хранения данных, хранящая указанный код, представляет собой настоящее изобретение.
В качестве среды хранения данных для обеспечения упомянутого программного кода могут быть использованы гибкий диск, жесткий диск, оптический диск, магнитооптический диск, CD-ROM, CD-R, магнитная лента, энергонезависимая карта памяти и ОЗУ.
Кроме того, функции согласно вариантам осуществления, описанным выше, могут быть реализованы не только путем выполнения программного кода, считываемого компьютером, но также путем обработки, при которой ОС (операционная система) или т.п. реализует часть или всю реальную обработку на основании инструкций, задаваемых программным кодом.
Более того, в другом аспекте настоящего изобретения, если программный код, считываемый со среды хранения данных, записывают в память, предусмотренную на функциональной плате расширения, вставляемой в компьютер или в функциональный модуль расширения, подсоединяемый к компьютеру, ЦПУ и т.п., предусмотренное на функциональной плате расширения, вставляемой в компьютер или в функциональном модуле расширения, может выполнять часть всей обработки для реализации функций вариантов осуществления, как описано выше.
Хотя настоящее изобретение описано со ссылкой на иллюстративные варианты осуществления, очевидно, что настоящее изобретение не ограничено раскрытыми вариантами осуществления. Объем нижеследующей формулы изобретения должен быть интерпретирован наиболее широко с тем, чтобы охватить все модификации, эквивалентные структуры и функции.
Класс G06F3/12 вывод цифровых данных на печатающие устройства