corresponding to the colorant with which this marker supply sub-unit is associated. This value shall be 0 if there is no colorant table." ::= { prtMarkerSuppliesEntry 3 } prtMarkerSuppliesClass OBJECT-TYPE -- This value is a type 1 enumeration SYNTAX INTEGER { other(1), supplyThatIsConsumed(3), receptacleThatIsFilled(4) } MAX-ACCESS read-only STATUS current DESCRIPTION "Indicates whether this supply entity represents a supply container that is consumed or a receptacle that is filled." ::= { prtMarkerSuppliesEntry 4 } prtMarkerSuppliesType OBJECT-TYPE -- This value is a type 3 enumeration SYNTAX INTEGER { other(1), unknown(2), toner(3), wasteToner(4), ink(5), inkCartridge(6), inkRibbon(7), wasteInk(8), opc(9), developer(10), fuserOil(11), solidWax(12), ribbonWax(13), wasteWax(14) } MAX-ACCESS read-only STATUS current DESCRIPTION "The type of this supply." ::= { prtMarkerSuppliesEntry 5 } prtMarkerSuppliesDescription OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION
"The description of this supply container/receptacle in the localization specified by prtGeneralCurrentLocalization." ::= { prtMarkerSuppliesEntry 6 } prtMarkerSuppliesSupplyUnit OBJECT-TYPE -- This value is a type 1 enumeration SYNTAX INTEGER { tenThousandthsOfInches(3), -- .0001 micrometers(4), thousandthsOfOunces(12), tenthsOfGrams(13), hundrethsOfFluidOunces(14), tenthsOfMilliliters(15) } MAX-ACCESS read-only STATUS current DESCRIPTION "Unit of this marker supply container/receptacle." ::= { prtMarkerSuppliesEntry 7 } prtMarkerSuppliesMaxCapacity OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-write STATUS current DESCRIPTION "The maximum capacity of this supply container/receptacle expressed in SupplyUnit. If this supply container/receptacle can reliably sense this value, the value is sensed by the printer and is read-only; otherwise, the value may be written (by a Remote Contol Panel or a Management Application). The value (-1) means other and specifically indicates that the sub-unit places no restrictions on this parameter. The value (-2) means unknown." ::= { prtMarkerSuppliesEntry 8 } prtMarkerSuppliesLevel OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-write STATUS current DESCRIPTION "The current level if this supply is a container; the remaining space if this supply is a receptacle. If this supply container/receptacle can reliably sense this value, the value is sensed by the printer and is read-only; otherwise, the value may be written (by a Remote Contol Panel or a Management Application). The value (-1) means other and specifically indicates that
the sub-unit places no restrictions on this parameter. The value (-2) means unknown. A value of (-3) means that the printer knows that there is some supply/remaining space, respectively." ::= { prtMarkerSuppliesEntry 9 } -- The Marker Colorant Group -- -- This group is optional. However, to claim conformance to this -- group, it is necessary to implement every object in the group. prtMarkerColorant OBJECT IDENTIFIER ::= { printmib 12 } prtMarkerColorantTable OBJECT-TYPE SYNTAX SEQUENCE OF PrtMarkerColorantEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of all of the colorants available on the printer." ::= { prtMarkerColorant 1 } prtMarkerColorantEntry OBJECT-TYPE SYNTAX PrtMarkerColorantEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Attributes of a colorant available on the printer. Entries may exist in the table for each device index who's device type is `printer'." INDEX { hrDeviceIndex, prtMarkerColorantIndex } ::= { prtMarkerColorantTable 1 } PrtMarkerColorantEntry ::= SEQUENCE { prtMarkerColorantIndex Integer32, prtMarkerColorantMarkerIndex Integer32, prtMarkerColorantRole INTEGER, prtMarkerColorantValue OCTET STRING, prtMarkerColorantTonality Integer32 } prtMarkerColorantIndex OBJECT-TYPE SYNTAX Integer32 (1..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A unique value used by the printer to identify this colorant. Although these values may change due to a major
reconfiguration of the device (e.g. the addition of new colorants to the printer), values are expected to remain stable across successive printer power cycles." ::= { prtMarkerColorantEntry 1 } prtMarkerColorantMarkerIndex OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The value of prtMarkerIndex corresponding to the marker sub-unit with which this colorant entry is associated." ::= { prtMarkerColorantEntry 2 } prtMarkerColorantRole OBJECT-TYPE -- This value is a type 1 enumeration SYNTAX INTEGER { -- Colorant Role other(1), process(3), spot(4) } MAX-ACCESS read-only STATUS current DESCRIPTION "The role played by this colorant." ::= { prtMarkerColorantEntry 3 } prtMarkerColorantValue OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..63)) MAX-ACCESS read-only STATUS current DESCRIPTION "The name of the color of this The name of the color of this colorant using standardized string names from ISO 10175 (DPA) and ISO 10180 (SPDL) which are: other unknown white red green blue cyan magenta yellow black Implementors may add additional string values. The naming conventions in ISO 9070 are recommended in order to avoid
potential name clashes" ::= { prtMarkerColorantEntry 4 } prtMarkerColorantTonality OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The distinct levels of tonality realizable by a marking sub-unit when using this colorant. This value does not include the number of levels of tonal difference that an interpreter can obtain by techniques such as half toning. This value must be at least 2." ::= { prtMarkerColorantEntry 5 } -- The Media Path Group -- -- The media paths encompass the mechanisms in the printer that move the -- media through the printer and connect all other media related sub- -- units: inputs, outputs, markers and finishers. A printer contains one -- or more media paths. These are represented by the Media Path Group in -- the model. The Media Path group has some attributes that apply to all -- paths plus a table of the separate media paths. prtMediaPath OBJECT IDENTIFIER ::= { printmib 13 } prtMediaPathDefaultIndex OBJECT-TYPE SYNTAX Integer32 (1..65535) MAX-ACCESS read-write STATUS current DESCRIPTION "The value of prtMediaPathIndex corresponding to the default media path; that is, the selection of the default media path." ::= { prtGeneralEntry 9 } prtMediaPathTable OBJECT-TYPE SYNTAX SEQUENCE OF PrtMediaPathEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "" ::= { prtMediaPath 4 } prtMediaPathEntry OBJECT-TYPE SYNTAX PrtMediaPathEntry MAX-ACCESS not-accessible STATUS current
DESCRIPTION "Entries may exist in the table for each device index who's device type is `printer'." INDEX { hrDeviceIndex, prtMediaPathIndex } ::= { prtMediaPathTable 1 } PrtMediaPathEntry ::= SEQUENCE { prtMediaPathIndex Integer32, prtMediaPathMaxSpeedPrintUnit INTEGER, prtMediaPathMediaSizeUnit MediaUnit, prtMediaPathMaxSpeed Integer32, prtMediaPathMaxMediaFeedDir Integer32, prtMediaPathMaxMediaXFeedDir Integer32, prtMediaPathMinMediaFeedDir Integer32, prtMediaPathMinMediaXFeedDir Integer32, prtMediaPathType INTEGER, prtMediaPathDescription OCTET STRING, prtMediaPathStatus SubUnitStatus } prtMediaPathIndex OBJECT-TYPE SYNTAX Integer32 (1..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A unique value used by the printer to identify this media path. Although these values may change due to a major reconfiguration of the device (e.g. the addition of new media paths to the printer), values are expected to remain stable across successive printer power cycles." ::= { prtMediaPathEntry 1 } prtMediaPathMaxSpeedPrintUnit OBJECT-TYPE -- This value is a type 1 enumeration SYNTAX INTEGER { tenThousandthsOfInchesPerHour(3), -- .0001/hour micrometersPerHour(4), charactersPerHour(5), linesPerHour(6), impressionsPerHour(7), sheetsPerHour(8), dotRowPerHour(9), feetPerHour(16), metersPerHour(17) } MAX-ACCESS read-only
STATUS current DESCRIPTION "The unit of measure used in specifying the speed of all media paths in the printer." ::= { prtMediaPathEntry 2 } prtMediaPathMediaSizeUnit OBJECT-TYPE SYNTAX MediaUnit MAX-ACCESS read-only STATUS current DESCRIPTION "The units of measure of media size for use in calculating and relaying dimensional values for all media paths in the printer." ::= { prtMediaPathEntry 3 } prtMediaPathMaxSpeed OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum printing speed of this media path expressed in prtMediaPathMaxSpeedUnit's. A value of (-1) implies 'other'." ::= { prtMediaPathEntry 4 } prtMediaPathMaxMediaFeedDir OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum physical media size in the feed direction of this media path expressed in units of measure specified by MediaSizeUnit. A value of (-1) implies 'unlimited'. A value of (-2) implies 'unknown'" ::= { prtMediaPathEntry 5 } prtMediaPathMaxMediaXFeedDir OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum physical media size across the feed direction of this media path expressed in units of measure specified by MediaSizeUnit. A value of (-2) implies 'unknown'." ::= { prtMediaPathEntry 6 } prtMediaPathMinMediaFeedDir OBJECT-TYPE SYNTAX Integer32
MAX-ACCESS read-only STATUS current DESCRIPTION "The minimum physical media size in the feed direction of this media path expressed in units of measure specified by MediaSizeUnit. A value of (-2) implies 'unknown'." ::= { prtMediaPathEntry 7 } prtMediaPathMinMediaXFeedDir OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The minimum physical media size across the feed direction of this media path expressed in units of measure specified by MediaSizeUnit. A value of (-2) implies 'unknown'." ::= { prtMediaPathEntry 8 } prtMediaPathType OBJECT-TYPE -- This value is a type 2 enumeration SYNTAX INTEGER { other(1), unknown(2), longEdgeBindingDuplex(3), shortEdgeBindingDuplex(4), simplex(5) } MAX-ACCESS read-only STATUS current DESCRIPTION "The type of the media path for this media path." ::= { prtMediaPathEntry 9 } prtMediaPathDescription OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "The manufacturer-provided description of this media path in the localization specified by prtGeneralCurrentLocalization." ::= { prtMediaPathEntry 10 } prtMediaPathStatus OBJECT-TYPE SYNTAX SubUnitStatus MAX-ACCESS read-only STATUS current DESCRIPTION "The current status of this media path."
::= { prtMediaPathEntry 11 } -- The Channel Group -- -- Implementation of every object in this group is mandatory. -- Channels are independent sources of print data. Here, -- print data is the term used for the information that is -- used to construct printed pages and may have both data -- and control aspects. The output of a channel is in a form -- suitable for input to one of the interpreters as a -- stream. A channel may be independently enabled (allowing -- print data to flow) or disabled (stopping the flow of -- print data). A printer may have one or more channels. -- -- Basically, the channel abstraction is intended to cover -- all the aspects of getting the print data to an -- interpreter. This might include transporting the data -- from one place to another, it might include (invisible) -- compression, it might include encoding or packetizing to -- provide multiple information sources over a single -- physical interface and it might include filtering -- characters that were destined for another kind of -- channel. All of these aspects are hidden in the channel -- abstraction.(Note some Page Description Languages have -- compression built into them so "invisible" compression -- refers to compression done by the transport medium and -- removed before the data is presented to the interpreter.) -- -- There are many kinds of channels;some of which are based -- on networks and others which are not. For example, a -- channel can be a serial (or parallel) connection; it can -- be a service, such as the Unix Line Printer Daemon (LPD), -- offering itself over a network connection (interface); or -- it could be a disk drive into which a floppy disks with -- the print data is inserted. Each channel is typically -- identified by the electronic path and/or service protocol -- used to deliver print data to the printer. -- -- Channel example Implementation -- -- serial port channel bi-directional data channel -- parallel port channel often uni-directional channel -- IEEE 1284 port channel bi-directional channel -- SCSI port channel bi-directional -- Apple PAP channel may be based on Local-, Ether-or -- TokenTalk -- LPD Server channel typically TCP/IP based, port 515
-- Novell Remote Printer typically SPX/IPX based channel -- Novell Print Server typically SPX/IPX based channel -- port 9100 channel HP and friends -- Adobe AppSocket(9101) channel a bi-directional extension of LPD -- -- It is easy to note that this is a mixed bag. There are -- some physical connections over which no (or very meager) -- protocols are run (e.g. the serial or old parallel ports) -- and there are services which often have elaborate -- protocols that run over a number of protocol stacks. In -- the end what is important is the delivery of print data -- thru the channel. -- -- The channel sub-units are represented by the Channel -- Group in the Model. It has a current Control Language -- which can be used to specify which interpreter is to be -- used for the print data and to query and change -- environment variables used by the interpreters (and -- Mangement Applications). There is also a default -- interpreter that is to be used if an interpreter is not -- explicitly specified using the Control Language. Channel -- sub-units are based on an underlying interface. -- The channel table and its underlying structure -- -- The first seven items in the Channel Table define the -- "channel" itself. A channel typically depends on other -- protocols and interfaces to provide the data that flows -- thru the channel. It is necessary to provide control of -- the (perhaps complex) process by which print data arrives -- at an interpreter. Control is largely limited to enabling -- or disabling the whole channel. It is likely, however, -- that more control of the process of accessing print data -- will be needed over time. Thus, the ChannelType will -- allow type specific data to be associated with each -- channel (using ChannelType specific groups in a fashion -- analogous to the media specific MIBs that are associated -- with the IANAIfType in the Interfaces Table). As a first -- step in this direction, each channel will identify the -- underlying Interface on which it is based. This is the -- eighth object in each row of the table. -- Some examples of the kind of control are where -- compression or encoding is used; and whether the data is -- filtered to remove file storage anomolies such as those -- created by using MS-DOS/PC-DOS LPT1:. --
-- The Channel Table -- -- The prtChannelTable represents the set of input data sources which -- can provide print data to one or more of the interpreters -- available on a printer prtChannel OBJECT IDENTIFIER ::= { printmib 14 } prtChannelTable OBJECT-TYPE SYNTAX SEQUENCE OF PrtChannelEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "" ::= { prtChannel 1 } prtChannelEntry OBJECT-TYPE SYNTAX PrtChannelEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Entries may exist in the table for each device index who's device type is `printer'." INDEX { hrDeviceIndex, prtChannelIndex } ::= { prtChannelTable 1 } PrtChannelEntry ::= SEQUENCE { prtChannelIndex Integer32, prtChannelType INTEGER, prtChannelProtocolVersion OCTET STRING, prtChannelCurrentJobCntlLangIndex Integer32, prtChannelDefaultPageDescLangIndex Integer32, prtChannelState INTEGER, prtChannelIfIndex Integer32, prtChannelStatus SubUnitStatus } prtChannelIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "A unique value used by the printer to identify this data channel. Although these values may change due to a major reconfiguration of the device (e.g. the addition of new data channels to the printer), values are expected to remain stable across successive printer power cycles."
::= { prtChannelEntry 1 } prtChannelType OBJECT-TYPE -- This value is a type 2 enumeration SYNTAX INTEGER { other(1), chSerialPort(3), chParallelPort(4), chIEEE1284Port(5), chSCSIPort(6), chAppleTalkPAP(7), -- AppleTalk Printer Achess Protocol chLPDServer(8), chNetwareRPrinter(9), -- Netware chNetwarePServer(10), -- Netware chPort9100(11), chAppSocket(12), -- a bi-directional, LPD-like -- protocol using 9101 for -- control and 9100 for data. -- Adobe Systems, Inc. chFTP(13), -- FTP "PUT" to printer chTFTP(14), chDLCLLCPort(15), chIBM3270(16), chIBM5250(17), chFax(18), chIEEE1394(19), chTransport1(20), -- port 35 chCPAP(21), -- port 170 chDCERemoteProcCall(22), -- OSF chONCRemoteProcCall(23), -- Sun Microsystems chOLE(24), -- Microsoft chNamedPipe(25), chPCPrint(26), -- Banyan chServerMessageBlock(27), -- File/Print sharing protocol used by -- various network operating systems -- from IBM 3Com, Microsoft and others chDPMF(28), -- Distributed Print Mgt. Framework, IBM chDLLAPI(29), -- Microsoft chVxDAPI(30), -- Microsoft chSystemObjectManager(31), -- IBM chDECLAT(32), -- Digital Equipment Corp. chNPAP(33) } MAX-ACCESS read-only STATUS current DESCRIPTION "The type of this print data channel. This
object provides the linkage to ChannelType-specific groups that may (conceptually) extend the prtChannelTable with additional details about that channel." ::= { prtChannelEntry 2 } prtChannelProtocolVersion OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..63)) MAX-ACCESS read-only STATUS current DESCRIPTION "The version of the protocol used on this channel. The format used for version numbering depends on prtChannelType." ::= { prtChannelEntry 3 } prtChannelCurrentJobCntlLangIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-write STATUS current DESCRIPTION "The value of prtInterpreterIndex corresponding to the Control Language Interpreter for this channel. This interpreter defines the syntax used for control functions, such as querying or changing environment variables and identifying job boundaries (e.g. PJL, PostScript, NPAP). Must be 1 or greater." ::= { prtChannelEntry 4 } prtChannelDefaultPageDescLangIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-write STATUS current DESCRIPTION "The value of prtInterpreterIndex corresponding to the Page Description Language Interpreter for this channel. This interpreter defines the default Page Description Language interpreter to be used for the print data unless the Control Language is used to select a specific interpreter (e.g., PCL, PostScript Language, auto-sense). Must be 1 or greater." ::= { prtChannelEntry 5 } prtChannelState OBJECT-TYPE -- This value is a type 1 enumeration SYNTAX INTEGER { other(1), printDataAccepted(3), noDataAccepted(4)
} MAX-ACCESS read-write STATUS current DESCRIPTION "The state of this print data channel. The value determines whether control information and print data is allowed through this channel or not." ::= { prtChannelEntry 6 } prtChannelIfIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-write STATUS current DESCRIPTION "The value of ifIndex (in the ifTable; see the interface section of MIB-2/RFC 1213) which corresponds to this channel. When more than one row of the ifTable is relevant, this is the index of the row representing the topmost layer in the interface hierarchy. A value of zero indicates that no interface is associated with this channel." ::= { prtChannelEntry 7 } prtChannelStatus OBJECT-TYPE SYNTAX SubUnitStatus MAX-ACCESS read-only STATUS current DESCRIPTION "The current status of the channel." ::= { prtChannelEntry 8 } -- The Interpreter Group -- -- The interpreter sub-units are responsible for the conversion of a -- description of intended print instances into images that are to be -- marked on the media. A printer may have one or more interpreters. The -- interpreter sub-units are represented by the Interpreter Group in the -- Model. Each interpreter is generally implemented with software running -- on the System Controller sub-unit. The Interpreter Table has one entry -- per interpreter where the interpreters include both Page Description -- Language (PDL) Interpreters and Control Language Interpreters. -- -- Implementation of every object in this group is mandatory. prtInterpreter OBJECT IDENTIFIER ::= { printmib 15 } -- Interpreter Table --
-- The prtInterpreterTable is a table representing the interpreters in -- the printer. An entry shall be placed in the interpreter table for -- each interpreter on the printer. prtInterpreterTable OBJECT-TYPE SYNTAX SEQUENCE OF PrtInterpreterEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "" ::= { prtInterpreter 1 } prtInterpreterEntry OBJECT-TYPE SYNTAX PrtInterpreterEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Entries may exist in the table for each device index who's device type is `printer'." INDEX { hrDeviceIndex, prtInterpreterIndex } ::= { prtInterpreterTable 1 } PrtInterpreterEntry ::= SEQUENCE { prtInterpreterIndex Integer32, prtInterpreterLangFamily INTEGER, prtInterpreterLangLevel OCTET STRING, prtInterpreterLangVersion OCTET STRING, prtInterpreterDescription OCTET STRING, prtInterpreterVersion OCTET STRING, prtInterpreterDefaultOrientation INTEGER, prtInterpreterFeedAddressability Integer32, prtInterpreterXFeedAddressability Integer32, prtInterpreterDefaultCharSetIn CodedCharSet, prtInterpreterDefaultCharSetOut CodedCharSet, prtInterpreterTwoWay INTEGER } prtInterpreterIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "A unique value for each PDL or control language for which there exists an interpreter or emulator in the printer. The value is used to identify this interpreter. Although these values may change due to a major reconfiguration of the device (e.g. the addition of new interpreters to the printer), values are expected to remain stable across successive printer power
cycles." ::= { prtInterpreterEntry 1 } prtInterpreterLangFamily OBJECT-TYPE -- This value is a type 2 enumeration SYNTAX INTEGER { other(1), langPCL(3), -- PCL. Starting with PCL version 5, -- HP-GL/2 is included as part of the -- PCL language. -- PCL and HP-GL/2 are registered -- trademarks of Hewlett-Packard Company. langHPGL(4), -- Hewlett-Packard Graphics Language. -- HP-GL is a registered trademark of -- Hewlett-Packard Company. langPJL(5), -- Peripheral Job Language. Appears in the -- data stream between data intended for a -- page description language. -- Hewlett-Packard Co. langPS(6), -- PostScript Language (tm) -- Postscript - a trademark of Adobe -- Systems Incorporated which may be -- registered in certain jurisdictions langPSPrinter(42), -- The PostScript Language used for -- control (with any PDLs) -- Adobe Systems Incorporated langIPDS(7), -- Intelligent Printer Data Stream -- Bi-directional print data stream for -- documents consisting of data objects -- (text, image, graphics, bar codes), -- resources (fonts, overlays) and page, -- form and finishing instructions. -- Facilitates system level device -- control, document tracking and error -- recovery throughout the print process. -- Pennant Systems, IBM langPPDS(8), -- IBM Personal Printer Data Stream. -- Originally called IBM ASCII, the name -- was changed to PPDS when the Laser -- Printer was introduced in 1989. -- Lexmark International, Inc. langEscapeP(9), langEpson(10), langDDIF(11), -- Digital Document Interchange Format -- Digital Equipment Corp., Maynard MA langInterpress(12), langISO6429(13), -- ISO 6429. Control functions for Coded -- Character Sets (has ASCII control
-- characters, plus additional controls for -- character imaging devices.) -- ISO Standard, Geneva, Switzerland langLineData(14), -- line-data: Lines of data as separate -- ASCII or EBCDIC records and containing -- no control functions (no CR, LF, HT, FF, -- etc.). For use with traditional line -- printers. May use CR and/or LF to -- delimit lines, instead of records. See -- ISO 10175 Document Printing Application -- (DPA) -- ISO standard, Geneva, Switzerland langMODCA(15), -- Mixed Object Document Content Architecture -- Definitions that allow the composition, -- interchange, and presentation of final -- form documents as a collection of data -- objects (text, image, graphics, bar -- codes), resources (fonts, overlays) and -- page, form and finishing instructions. -- Pennant Systems, IBM langREGIS(16), -- Remote Graphics Instruction Set, -- Digital Equipment Corp., Maynard MA langSCS(17), -- SNA Character String -- Bi-directional print data stream for SNA -- LU-1 mode of communications -- IBM langSPDL(18), -- ISO 10180 Standard Page Description -- Language -- ISO Standard langTEK4014(19), langPDS(20), langIGP(21), langCodeV(22), -- Magnum Code-V, Image and printer control -- language used to control impact/dot- -- matrix printers. -- QMS, Inc., Mobile AL langDSCDSE(23), -- DSC-DSE: Data Stream Compatible and -- Emulation Bi-directional print data -- stream for non-SNA (DSC) and SNA LU-3 -- 3270 controller (DSE) communications -- IBM langWPS(24), -- Windows Printing System, Resource based -- command/data stream used by Microsoft At -- Work Peripherals. -- Developed by the Microsoft Corporation. langLN03(25), -- Early DEC-PPL3, Digital Equipment Corp. langCCITT(26), langQUIC(27), -- QUIC (Quality Information Code), Page
-- Description Language for laser printers. -- Included graphics, printer control -- capability and emulation of other well- -- known printer . -- QMS, Inc. langCPAP(28), -- Common Printer Access Protocol -- Digital Equipment Corp. langDecPPL(29), -- Digital ANSI-Compliant Printing Protocol -- (DEC-PPL) -- Digital Equipment Corp. langSimpleText(30),-- simple-text: character coded data, -- including NUL, CR , LF, HT, and FF -- control characters. See ISO 10175 -- Document Printing Application (DPA) -- ISO standard, Geneva, Switzerland langNPAP(31), -- Network Printer Alliance Protocol -- IEEE 1284.1 langDOC(32), -- Document Option Commands, Appears in the -- data stream between data intended for a -- page description . -- QMS, Inc. langimPress(33), -- imPRESS, Page description language -- originally developed for the ImageServer -- line of systems. A binary language -- providing representations for text, -- simple graphics (rules, lines, conic -- sections), and some large forms (simple -- bit-map and CCITT group 3/4 encoded).The -- language was intended to be sent over an -- 8-bit channel and supported early -- document preparation languages (e.g. TeX -- and TROFF). -- QMS, Inc. langPinwriter(34), -- 24 wire dot matrix printer for -- USA, Europe, and Asia except Japan. -- More widely used in Germany, and some -- Asian countries than in US. -- NEC langNPDL(35), -- Page printer for Japanese -- market. -- NEC langNEC201PL(36), -- Serial printer language used in the -- Japanese market. -- NEC langAutomatic(37), -- Automatic PDL sensing. Automatic -- sensing of the interpreter language -- family by the printer examining the -- document content. Which actual
-- interpreter language families are sensed -- depends on the printer implementation. langPages(38), -- Page printer Advanced Graphic Escape Set -- IBM Japan langLIPS(39), -- LBP Image Processing System langTIFF(40), -- Tagged Image File Format (Aldus) langDiagnostic(41),-- A hex dump of the input to the -- interpreter langCaPSL(43), -- Canon Print Systems Language langEXCL(44), -- Extended Command Language -- Talaris Systems Inc. langLCDS(45), -- Line Conditioned Data Stream -- Xerox Corporation langXES(46) -- Xerox Escape Sequences -- Xerox Corporation } MAX-ACCESS read-only STATUS current DESCRIPTION "The family name of a Page Description Language (PDL) or control language which this interpreter in the printer can interpret or emulate. This type 2 list of enumerations requires review before additional entries are made." ::= { prtInterpreterEntry 2 } prtInterpreterLangLevel OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..31)) MAX-ACCESS read-only STATUS current DESCRIPTION "The level of the language which this interpreter is interpreting or emulating. This might contain a value like '5e' for an interpreter which is emulating level 5e of the PCL language. It might contain '2' for an interpreter which is emulating level 2 of the PostScript language. Similarly it might contain '2' for an interpreter which is emulating level 2 of the HPGL language." ::= { prtInterpreterEntry 3 } prtInterpreterLangVersion OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..31)) MAX-ACCESS read-only STATUS current DESCRIPTION "The date code or version of the language which this interpreter is interpreting or emulating." ::= { prtInterpreterEntry 4 }
prtInterpreterDescription OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "A string to identify this interpreter in the localization specified by prtGeneralCurrentLocalization as opposed to the language which is being interpreted. It is anticipated that this string will allow manufacturers to unambiguously identify their interpreters." ::= { prtInterpreterEntry 5 } prtInterpreterVersion OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..31)) MAX-ACCESS read-only STATUS current DESCRIPTION "The date code, version number, or other product specific information tied to this interpreter. This value is associated with the interpreter, rather than with the version of the language which is being interpreted or emulated." ::= { prtInterpreterEntry 6 } prtInterpreterDefaultOrientation OBJECT-TYPE -- This value is a type 1 enumeration SYNTAX INTEGER { other(1), portrait(3), landscape(4) } MAX-ACCESS read-write STATUS current DESCRIPTION "The current orientation default for this interpreter. This value may be overridden for a particular job (e.g., by a command in the input data stream)." ::= { prtInterpreterEntry 7 } prtInterpreterFeedAddressability OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum interpreter addressability in the feed direction in 10000 prtMarkerAddressabilityUnit s (see prtMarkerAddressabilityFeedDir ) for this interpreter. The value (-1) means other and specifically indicates that the sub-unit places no restrictions on this parameter."
::= { prtInterpreterEntry 8 } prtInterpreterXFeedAddressability OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum interpreter addressability in the cross feed direction in 10000 prtMarkerAddressabilityUnit s (see prtMarkerAddressabilityXFeedDir) for this interpreter. The value (-1) means other and specifically indicates that the sub-unit places no restrictions on this parameter." ::= { prtInterpreterEntry 9 } prtInterpreterDefaultCharSetIn OBJECT-TYPE SYNTAX CodedCharSet MAX-ACCESS read-write STATUS current DESCRIPTION "The default coded character set for input octets encountered outside a context in which the Page Description Language established the interpretation of the octets. This value shall be (2) if there is no default." ::= { prtInterpreterEntry 10 } prtInterpreterDefaultCharSetOut OBJECT-TYPE SYNTAX CodedCharSet MAX-ACCESS read-write STATUS current DESCRIPTION "The default character set for data coming from this interpreter through the printer's output channel. This value shall be (2) if there is no default." ::= { prtInterpreterEntry 11 } prtInterpreterTwoWay OBJECT-TYPE -- This value is a type 1 enumeration SYNTAX INTEGER { yes(3), no(4) } MAX-ACCESS read-only STATUS current
DESCRIPTION "Indicates whether or not this interpreter returns information back to the host." ::= { prtInterpreterEntry 12 } -- The Console Group -- -- Many printers have a console on the printer, the operator console, -- that is used to display and modify the state of the printer. The -- console can be as simple as a few indicators and switches or as -- complicated as full screen displays and keyboards. There can be -- at most one such console. -- -- Implementation of every object in this group is mandatory. prtConsoleLocalization OBJECT-TYPE SYNTAX Integer32 (1..65535) MAX-ACCESS read-write STATUS current DESCRIPTION "The value of the prtLocalizationIndex corresponding to the language, country, and character set to be used for the console. This localization applies both to the actual display on the console as well as the encoding of these console objects in management operations." ::= { prtGeneralEntry 10 } prtConsoleNumberOfDisplayLines OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The number of lines on the printer's physical display. This value is 0 if there are no lines on the physical display or if there is no physical display" ::= { prtGeneralEntry 11 } prtConsoleNumberOfDisplayChars OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The number of characters per line displayed on the physical display. This value is 0 if there are no lines on the physical display or if there is no physical display" ::= { prtGeneralEntry 12 } prtConsoleDisable OBJECT-TYPE
SYNTAX INTEGER { enabled(3), disabled(4) } MAX-ACCESS read-write STATUS current DESCRIPTION "This object enables or disables manual input from the operators console." ::= { prtGeneralEntry 13 } -- The Display Buffer Table prtConsoleDisplayBuffer OBJECT IDENTIFIER ::= { printmib 16 } prtConsoleDisplayBufferTable OBJECT-TYPE SYNTAX SEQUENCE OF PrtConsoleDisplayBufferEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "" ::= { prtConsoleDisplayBuffer 5 } prtConsoleDisplayBufferEntry OBJECT-TYPE SYNTAX PrtConsoleDisplayBufferEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains one entry for each physical line on the display. Lines cannot be added or deleted. Entries may exist in the table for each device index who's device type is `printer'." INDEX { hrDeviceIndex, prtConsoleDisplayBufferIndex } ::= { prtConsoleDisplayBufferTable 1 } PrtConsoleDisplayBufferEntry ::= SEQUENCE { prtConsoleDisplayBufferIndex Integer32, prtConsoleDisplayBufferText OCTET STRING } prtConsoleDisplayBufferIndex OBJECT-TYPE SYNTAX Integer32 (1..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A unique value for each console line in the printer. The value is used to identify this console line. Although
these values may change due to a major reconfiguration of the device (e.g. the addition of new console lines to the printer), values are expected to remain stable across successive printer power cycles." ::= { prtConsoleDisplayBufferEntry 1 } prtConsoleDisplayBufferText OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..255)) MAX-ACCESS read-write STATUS current DESCRIPTION "The content of a line in the logical display buffer of the operator's console of the printer. When a write operation occurs, normally a critical message, to one of the LineText strings, the agent should make that line displayable if a physical display is present. Writing a zero length string clears the line. It is an implementation-specific matter as to whether the agent allows a line to be overwritten before it has been cleared. Printer generated strings shall be in the localization specified by ConsoleLocalization. Management Application generated strings should be localized by the Management Application." ::= { prtConsoleDisplayBufferEntry 2 } -- The Console Light Table prtConsoleLights OBJECT IDENTIFIER ::= { printmib 17 } prtConsoleLightTable OBJECT-TYPE SYNTAX SEQUENCE OF PrtConsoleLightEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "" ::= { prtConsoleLights 6 } prtConsoleLightEntry OBJECT-TYPE SYNTAX PrtConsoleLightEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Entries may exist in the table for each device index who's device type is `printer'." INDEX { hrDeviceIndex, prtConsoleLightIndex } ::= { prtConsoleLightTable 1 } PrtConsoleLightEntry ::= SEQUENCE {
prtConsoleLightIndex Integer32, prtConsoleOnTime Integer32, prtConsoleOffTime Integer32, prtConsoleColor INTEGER, prtConsoleDescription OCTET STRING } prtConsoleLightIndex OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A unique value used by the printer to identify this light. Although these values may change due to a major reconfiguration of the device (e.g. the addition of new lights to the printer), values are expected to remain stable across successive printer power cycles." ::= { prtConsoleLightEntry 1 } prtConsoleOnTime OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-write STATUS current DESCRIPTION "The on time in milliseconds of blinking of this light; 0 indicates off always. If both prtConsoleOnTime and prtConsoleOffTime are 0, then the light is always off." ::= { prtConsoleLightEntry 2 } prtConsoleOffTime OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-write STATUS current DESCRIPTION "The off time in milliseconds of blinking of this light; 0 indicates on always. If both prtConsoleOnTime and prtConsoleOffTime are 0, then the light is always off." ::= { prtConsoleLightEntry 3 } prtConsoleColor OBJECT-TYPE -- This value is a type 2 enumeration SYNTAX INTEGER { other(1), unknown(2), white(3), red(4),
green(5), blue(6), cyan(7), magenta(8), yellow(9) } MAX-ACCESS read-only STATUS current DESCRIPTION "The color of this light." ::= { prtConsoleLightEntry 4 } prtConsoleDescription OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "The vendor description or label of this light in the localization specified by prtConsoleLocalization." ::= { prtConsoleLightEntry 5 } -- The Alerts Group -- -- The prtAlertTable lists all the critical and non-critical alerts -- currently active in the printer. A critical alert is one that stops -- the printer from printing immediately and printing can not continue -- until the critical alert condition is eliminated. Non-critical -- alerts are those items that do not stop printing but may at some -- future time. -- The table contains information on the severity, component, detail -- location within the component, alert code and description of each -- critical alert that is currently active within the printer. See -- 2.2.13 for a more complete description of the alerts table and -- its management. -- -- Implementation of every object in this group is mandatory. prtAlert OBJECT IDENTIFIER ::= { printmib 18 } prtAlertTable OBJECT-TYPE SYNTAX SEQUENCE OF PrtAlertEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "" ::= { prtAlert 1 }
prtAlertEntry OBJECT-TYPE SYNTAX PrtAlertEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Entries may exist in the table for each device index who's device type is `printer'." INDEX { hrDeviceIndex, prtAlertIndex } ::= { prtAlertTable 1 } PrtAlertEntry ::= SEQUENCE { prtAlertIndex Integer32, prtAlertSeverityLevel INTEGER, prtAlertTrainingLevel INTEGER, prtAlertGroup INTEGER, prtAlertGroupIndex Integer32, prtAlertLocation Integer32, prtAlertCode INTEGER, prtAlertDescription OCTET STRING, prtAlertTime TimeTicks } prtAlertIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index value used to determine which alerts have been added or removed from the alert table. This is an incrementing integer starting from zero every time the printer is reset. When the printer adds an alert to the table, that alert is assigned the next higher integer value from the last item entered into the table. If the index value reaches its maximum value, the next item entered will cause the index value to roll over and start at zero again. The first event placed in the alert table after a reset of the printer shall have an index value of 1. NOTE: The management application will read the alert table when a trap or event notification occurs or at a periodic rate and then parse the table to determine if any new entries were added by comparing the last known index value with the current highest index value. The management application will then update its copy of the alert table. When the printer discovers that an alert is no longer active, the printer shall remove the row for that alert from the table and
shall reduce the number of rows in the table. The printer may add or delete any number of rows from the table at any time. The management station can detect when binary alerts have been deleted by requesting an attribute of each alert, and noting alerts as deleted when that retrieval is not possible." ::= { prtAlertEntry 1 } prtAlertSeverityLevel OBJECT-TYPE -- This value is a type 1 enumeration SYNTAX INTEGER { other(1), critical(3), warning(4) } MAX-ACCESS read-only STATUS current DESCRIPTION "The level of severity of this alert table entry. The printer determines the severity level assigned to each entry into the table." ::= { prtAlertEntry 2 } prtAlertTrainingLevel OBJECT-TYPE -- This value is a type 2 enumeration SYNTAX INTEGER { other(1), unknown(2), untrained(3), trained(4), fieldService(5), management(6) } MAX-ACCESS read-only STATUS current DESCRIPTION "The level of training required to handle this alert. The training level is an enumeration that is determined and assigned by the printer manufacturer based on the information or the training required to handle this alert. The printer will break alerts into these different training levels. It is the responsibility of the management application in the system to determine how a particular alert is handled and how and to whom that alert is routed. The following are the four training levels of alerts: Field Service - Alerts that typically require advanced training and technical knowledge of the printer
and its sub-units. An example of a technical person would be a manufacture's Field Service representative, or other person formally trained by the manufacturer or similar representative. Trained - Alerts that require an intermediate or moderate level of knowledge of the printer and its sub-units. A typical examples of alerts that a trained operator can handle is replacing toner cartridges. Untrained - Alerts that can be fixed without prior training either because the action to correct the alert is obvious or the printer can help the untrained person fix the problem. A typical example of such an alert is reloading paper trays and emptying output bins on a low end printer. Management - Alerts that have to do with overall operation of and configuration of the printer. Examples of management events are configuration change of sub-units." ::= { prtAlertEntry 3 } prtAlertGroup OBJECT-TYPE -- This value is a type 1 enumeration SYNTAX INTEGER { other(1), hostResourcesMIBStorageTable(3), hostResourcesMIBDeviceTable(4), generalPrinter(5), cover(6), localization(7), input(8), output(9), marker(10), markerSupplies(11), markerColorant(12), mediaPath(13), channel(14), interpreter(15), consoleDisplayBuffer(16), consoleLights(17) } MAX-ACCESS read-only STATUS current DESCRIPTION "The type of sub-unit within the printer model that this alert is related. Input, output, and markers are examples of
printer model groups, i.e., examples of types of sub-units. Whereever possible, these enumerations match the sub-identifier that identifies the relevant table in the printmib." ::= { prtAlertEntry 4 } prtAlertGroupIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "An index of the row within the principle table in the group identified by prtAlertGroup that represents the sub-unit of the printer that caused this alert. The combination of the Group and the GroupIndex defines exactly which printer sub-unit caused the alert.; for example, Input #3, Output #2, and Marker #1. Every object in this MIB is indexed with hrDeviceIndex and optionally, another index variable. If this other index variable is present in the table that generated the alert, it will be used as the value for this object. Otherwise, this value shall be -1." ::= { prtAlertEntry 5 } prtAlertLocation OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The sub-unit location that is defined by the printer manufacturer to further refine the location of this alert within the designated sub-unit. The location is used in conjunction with the Group and GroupIndex values; for example, there is an alert in Input #2 at location number 7." ::= { prtAlertEntry 6 } prtAlertCode OBJECT-TYPE -- This value is a type 2 enumeration SYNTAX INTEGER { other(1), unknown(2), -- codes common to serveral groups coverOpen(3), coverClosed(4), interlockOpen(5), interlockClosed(6),