1 kumpf 1.2 // ===================================================================
2 // Title: Device Storage Library 2.7
3 // Filename: Device27_StorageLib.mof
4 // Version: 2.7.0
5 // Release: Final
6 // Date: 03/31/03
7 // ===================================================================
8 // Copyright 2000-2003 Distributed Management Task Force, Inc. (DMTF).
9 // All rights reserved.
10 // DMTF is a not-for-profit association of industry members dedicated
11 // to promoting enterprise and systems management and interoperability.
12 // DMTF specifications and documents may be reproduced for uses
13 // consistent with this purpose by members and non-members,
14 // provided that correct attribution is given.
15 // As DMTF specifications may be revised from time to time,
16 // the particular version and release date should always be noted.
17 //
18 // Implementation of certain elements of this standard or proposed
19 // standard may be subject to third party patent rights, including
20 // provisional patent rights (herein "patent rights"). DMTF makes
21 // no representations to users of the standard as to the existence
22 kumpf 1.2 // of such rights, and is not responsible to recognize, disclose, or
23 // identify any or all such third party patent right, owners or
24 // claimants, nor for any incomplete or inaccurate identification or
25 // disclosure of such rights, owners or claimants. DMTF shall have no
26 // liability to any party, in any manner or circumstance, under any
27 // legal theory whatsoever, for failure to recognize, disclose, or
28 // identify any such third party patent rights, or for such party's
29 // reliance on the standard or incorporation thereof in its product,
30 // protocols or testing procedures. DMTF shall have no liability to
31 // any party implementing such standard, whether such implementation
32 // is foreseeable or not, nor to any patent owner or claimant, and shall
33 // have no liability or responsibility for costs or losses incurred if
34 // a standard is withdrawn or modified after publication, and shall be
35 // indemnified and held harmless by any party implementing the
36 // standard from any and all claims of infringement by a patent owner
37 // for such implementations.
38 //
39 // For information about patents held by third-parties which have
40 // notified the DMTF that, in their opinion, such patent may relate to
41 // or impact implementations of DMTF standards, visit
42 // http://www.dmtf.org/about/policies/disclosures.php.
43 kumpf 1.2 // ===================================================================
44 // Description: The Device Model extends the management concepts that
45 // are related to LogicalDevices. This file defines the
46 // classes that model a storage library.
47 //
48 // The object classes below are listed in an order that
49 // avoids forward references. Required objects, defined
50 // by other working groups, are omitted.
51 // ==================================================================
52 // Change Log for v2.7 Final
53 // CR970 - Removal of the Experimental qualifier
54 //
55 // Change Log for v2.7
56 // CR721 - Add LabelReaderStatData and PickerStatData that are part
57 // of the new statistics hierarcy
58 // CR822 - Change the subclassing of LibraryPackage from
59 // Dependency to SystemPackaging
60 // ==================================================================
61
62 #pragma locale ("en_US")
63
64 kumpf 1.2
65 // ===================================================================
66 // StorageLibrary
67 // ===================================================================
68 [Version ("2.6.0"), Description (
69 "A StorageLibrary is a collection of ManagedSystemElements "
70 "that operate together to provide cartridge library "
71 "capabilities. This object serves as an aggregation point to "
72 "group the following elements: MediaTransferDevices, a Label"
73 "Reader, a library Door, MediaAccessDevices, and other "
74 "Library components.") ]
75 class CIM_StorageLibrary : CIM_System {
76
77 [Description (
78 "Capabilities of the StorageLibrary. For example, it can be "
79 "indicated that the Library can perform automatic cleaning of "
80 "the MediaAccessDevices contained in it (value=1) or that the "
81 "Library provides physical door access for an operator "
82 "(value=2)."),
83 ValueMap {"0", "1", "2", "3", "4"},
84 Values {"Unknown", "Other", "Automatic Cleaning",
85 kumpf 1.2 "Manual Operation", "Front Panel Lockable"} ]
86 uint16 Capabilities[];
87
88 [Description (
89 "Boolean set to TRUE if there are more PhysicalMedia in a "
90 "Library than there are StorageMediaLocations to contain them. "
91 "For instance, if all MediaAccessDevices have a Media loaded "
92 "in them, and all StorageMediaLocations are loaded by an "
93 "operator, then an Overfilled condition exists.") ]
94 boolean Overfilled;
95
96 [Description (
97 "Boolean set to TRUE if the Library can not currently report "
98 "the correct state of each PhysicalMedia within its proper "
99 "StorageMediaLocation.") ]
100 boolean AuditNeeded;
101
102 [Description (
103 "Boolean set to TRUE if an audit of the location of some or "
104 "all of the Library's PhysicalMedia is currently being "
105 "performed. That an individual Changer is currently doing an "
106 kumpf 1.2 "audit is indicated by a similar AuditInProgress boolean "
107 "property on the Changer object.") ]
108 boolean AuditInProgress;
109
110 [Description (
111 "Maximum time in seconds that it takes for the Storage"
112 "Library to perform a complete audit of each StorageMedia"
113 "Location, to determine the absence or presence of a Physical"
114 "Media. If automated support is not provided, then this "
115 "property's value is undefined."),
116 Units ("Seconds") ]
117 uint64 MaxAuditTime;
118
119 [Description (
120 "Boolean set to TRUE if the Library includes a robotics "
121 "mechanism that can be controlled by a ComputerSystem, to "
122 "automatically load and unload PhysicalMedia to/from "
123 "MediaAccessDevices and StorageMediaLocations. The "
124 "property is set to FALSE if the Library represents a "
125 "repository of Media that are inaccessible to a MediaAccess"
126 "Device without human intervention. An example of a non-"
127 kumpf 1.2 "automated Library is a 'shelf' or 'vault' where Physical"
128 "Media are kept for extended periods of time.") ]
129 boolean Automated;
130
131 [Description (
132 "Boolean indicating whether the Library's robotics are "
133 "currently active/enabled. If TRUE, then the Library may not "
134 "be safe for a human to enter.") ]
135 boolean RoboticsEnabled;
136
137 [Description (
138 "Requests that the Library robotics be enabled for "
139 "automated operation (input parameter, Enabled, set to TRUE), "
140 "or disabled for manual operation (input parameter set to "
141 "FALSE). The return value should be 0 if the request was "
142 "successfully executed, 1 if the request is not supported "
143 "and some other value if an error occurred. In a subclass, "
144 "the set of possible return codes could be specified, using "
145 "a ValueMap qualifier on the method. The strings to which "
146 "the ValueMap contents are 'translated' may also be specified "
147 "in the subclass as a Values array qualifier.") ]
148 kumpf 1.2 uint32 EnableRobotics(
149 [IN]
150 boolean Enable);
151 };
152
153
154 // ==================================================================
155 // LibraryPackage
156 // ==================================================================
157 [Association, Version ("2.7.0"), Description (
158 "Similar to the way that LogicalDevices are 'Realized' by "
159 "PhysicalElements, a StorageLibrary can be realized in one or "
160 "more PhysicalPackages. The LibraryPackage association "
161 "explicitly defines this relationship.") ]
162 class CIM_LibraryPackage : CIM_SystemPackaging {
163
164 [Override ("Antecedent"), Description (
165 "The PhysicalPackage(s) that realize a StorageLibrary.") ]
166 CIM_PhysicalPackage REF Antecedent;
167
168 [Override ("Dependent"),
169 kumpf 1.2 Description ("The StorageLibrary.") ]
170 CIM_StorageLibrary REF Dependent;
171 };
172
173
174 // ===================================================================
175 // MediaTransferDevice
176 // ===================================================================
177 [Version ("2.6.0"), Description (
178 "A MediaTransferDevice represents hardware that moves Physical"
179 "Media. It is a superclass for Devices like PickerElement, "
180 "ChangerDevice and InterLibraryPort.") ]
181 class CIM_MediaTransferDevice : CIM_LogicalDevice {
182 };
183
184
185 // ===================================================================
186 // DeviceServicesLocation
187 // ===================================================================
188 [Association, Version ("2.6.0"), Description (
189 "Within an automated StorageLibrary, Media should be accessible "
190 kumpf 1.2 "to the various robotics and MediaTransferDevices (Pickers, "
191 "Changers, InterLibraryPorts, etc.). The Library may be "
192 "serviced by different TransferDevices, each responsible for "
193 "a subset of the Library's StorageMediaLocations. The Device"
194 "ServicesLocation association indicates that the Transfer"
195 "Device handles Media stored in the referenced Location. "
196 "For example, LibraryPort 'A' may only service Media from "
197 "Slots 1-10, while LibraryPort 'B' covers Slots 11-33. "
198 "This detail is conveyed by this association.") ]
199 class CIM_DeviceServicesLocation : CIM_Dependency {
200
201 [Override ("Antecedent"), Description (
202 "The MediaTransferDevice that handles Media from the "
203 "StorageMediaLocation.") ]
204 CIM_MediaTransferDevice REF Antecedent;
205
206 [Override ("Dependent"), Description (
207 "The MediaLocation that is serviced.") ]
208 CIM_StorageMediaLocation REF Dependent;
209
210 [Description (
211 kumpf 1.2 "Boolean indicating that the referenced StorageMediaLocation "
212 "is not currently accessible to the MediaTransferDevice. For "
213 "example, the Location could be the realization of an "
214 "InterLibraryPort that is currently servicing another "
215 "Library. The DeviceServicesLocation association describes "
216 "that the TransferDevice COULD service the MediaLocation. "
217 "This boolean indicates that that this is temporarily not "
218 "possible.") ]
219 boolean Inaccessible;
220 };
221
222
223 // ===================================================================
224 // PickerElement
225 // ===================================================================
226 [Version ("2.6.0"), Description (
227 "PickerElements represent hardware used to pick or place "
228 "PhysicalMedia from/into StorageMediaLocations.") ]
229 class CIM_PickerElement : CIM_MediaTransferDevice {
230
231 [Description (
232 kumpf 1.2 "The maximum time in seconds for a PickerElement to grab "
233 "a PhysicalMedia from a StorageMediaLocation, once the "
234 "Picker has arrived at that Location. The maximum time "
235 "interval for moving a Media from one point to another is "
236 "the sum of the PickerElement's MaxPickTime, the Changer"
237 "Device's MaxTransitTime and the PickerElement's MaxPutTime."),
238 Units ("Seconds") ]
239 uint32 MaxPickTime;
240
241 [Description (
242 "The maximum time in seconds for a PickerElement to place "
243 "a PhysicalMedia into a StorageMediaLocation, once the "
244 "Picker has arrived at that Location. The maximum time "
245 "interval for moving a Media from one point to another is "
246 "the sum of the PickerElement's MaxPickTime, the Changer"
247 "Device's MaxTransitTime and the PickerElement's MaxPutTime."),
248 Units ("Seconds") ]
249 uint32 MaxPutTime;
250
251 [Description (
252 "String describing the location in the StorageLibrary "
253 kumpf 1.2 "where the Picker is currently positioned.") ]
254 string CellLocation;
255 };
256
257
258 // ===================================================================
259 // ChangerDevice
260 // ===================================================================
261 [Version ("2.6.0"), Description (
262 "ChangerDevices represent hardware that moves PhysicalMedia "
263 "within a System, such as a StorageLibrary.") ]
264 class CIM_ChangerDevice : CIM_MediaTransferDevice {
265
266 [Description (
267 "The maximum time in seconds between a PickerElement pick "
268 "and place. It should be reported as the transit time "
269 "between the two most physically distant StorageMedia"
270 "Locations in a System. The maximum time interval for "
271 "moving a Media from one point to another is the sum of "
272 "the PickerElement's MaxPickTime, the ChangerDevice's Max"
273 "TransitTime and the PickerElement's MaxPutTime."),
274 kumpf 1.2 Units ("Seconds") ]
275 uint32 MaxTransitTime;
276
277 [Description (
278 "Boolean set to TRUE if the Changer supports media flipping. "
279 "Media needs to be flipped when multi-sided PhysicalMedia "
280 "are placed into a MediaAccessDevice that does NOT support "
281 "dual sided access.") ]
282 boolean MediaFlipSupported;
283
284 [Description (
285 "Boolean set to TRUE if an audit is currently being performed "
286 "by the Changer.") ]
287 boolean AuditInProgress;
288
289 [Counter, Description (
290 "A count of the number of audits performed by the Changer.") ]
291 uint64 AuditsPerformed;
292 };
293
294
295 kumpf 1.2 // ===================================================================
296 // PickerForChanger
297 // ===================================================================
298 [Association, Version ("2.6.0"), Description (
299 "PickerForChanger indicates the PickerElement(s) that access "
300 "StorageMediaLocations and deliver PhysicalMedia to the Changer, "
301 "for movement through the System. A Changer may have several "
302 "Pickers for faster exchange of Media.") ]
303 class CIM_PickerForChanger : CIM_Dependency {
304
305 [Override ("Antecedent"), Description (
306 "The PickerElement that accesses StorageMediaLocations "
307 "to deliver Media to the Changer.") ]
308 CIM_PickerElement REF Antecedent;
309
310 [Override ("Dependent"), Max (1), Description (
311 "The ChangerDevice.") ]
312 CIM_ChangerDevice REF Dependent;
313 };
314
315
316 kumpf 1.2 // ===================================================================
317 // LimitedAccessPort
318 // ===================================================================
319 [Version ("2.6.0"), Description (
320 "LimitedAccessPorts represent hardware that transports Physical"
321 "Media into or out of a System, such as a StorageLibrary. They "
322 "are identified as 'limited' since these Ports do not provide "
323 "access to ALL the PhysicalMedia or StorageMediaLocations in a "
324 "Library, but only to a subset.") ]
325 class CIM_LimitedAccessPort : CIM_MediaTransferDevice {
326
327 [Description (
328 "Boolean indicating that the Port is 'locked' (TRUE) or "
329 "'unlocked' (FALSE). When the Port is locked, access its Media "
330 "Locations is prevented without the use of a physical key, "
331 "front panel activity or the issuance of a software unlock "
332 "command.") ]
333 boolean Locked;
334
335 [Description (
336 "When a Port is 'Extended' or 'open' (value=TRUE), its Storage"
337 kumpf 1.2 "MediaLocations are accessible to a human operator. If not "
338 "extended (value=FALSE), the Locations are accessible to a "
339 "PickerElement.") ]
340 boolean Extended;
341
342 [Description (
343 "When a LimitedAccessPort is 'Extended', all related media-"
344 "transfer componentry may be stopped. The ExtendTimeout "
345 "property provides a mechanism to event on a Port left open "
346 "for a period of time (in seconds) exceeding the property's "
347 "value."),
348 Units ("Seconds") ]
349 uint32 ExtendTimeout;
350
351 [Description (
352 "Date and time that the Port was last extended.") ]
353 datetime LastExtended;
354
355 [Counter, Description (
356 "The number of times that the LimitedAccessPort was used to "
357 "move a PhysicalMedia into the System/StorageLibrary.") ]
358 kumpf 1.2 uint64 ImportCount;
359
360 [Counter, Description (
361 "The number of times that the LimitedAccessPort was used to "
362 "move a PhysicalMedia out of the System/StorageLibrary.") ]
363 uint64 ExportCount;
364
365 [Description (
366 "An enumeration expressing whether the Port is used for "
367 "import into the Library/System which scopes and names it "
368 "(value=1), export from the Library/System (value=2), or "
369 "both (value=3)."),
370 ValueMap {"0", "1", "2", "3"},
371 Values {"Unknown", "Import", "Export",
372 "Both Import and Export"} ]
373 uint16 Direction;
374 };
375
376
377 // ===================================================================
378 // InterLibraryPort
379 kumpf 1.2 // ===================================================================
380 [Version ("2.6.0"), Description (
381 "InterLibraryPorts represent hardware that transports Physical"
382 "Media between connected StorageLibraries. The LibraryExchange "
383 "association identifies the connected Libraries, by identifying "
384 "the connected InterLibraryPorts.") ]
385 class CIM_InterLibraryPort : CIM_MediaTransferDevice {
386
387 [Description (
388 "Date and time that the Port was last accessed by its "
389 "System/StorageLibrary. This value may be different "
390 "than that specified for the Port(s) to which this Inter"
391 "LibraryPort is connected. Connected Ports are identified "
392 "using the LibraryExchange association.") ]
393 datetime LastAccessed;
394
395 [Counter, Description (
396 "The number of times that the InterLibraryPort was used to "
397 "move a PhysicalMedia into the System/StorageLibrary.") ]
398 uint64 ImportCount;
399
400 kumpf 1.2 [Counter, Description (
401 "The number of times that the InterLibraryPort was used to "
402 "move a PhysicalMedia out of the System/StorageLibrary.") ]
403 uint64 ExportCount;
404
405 [Description (
406 "An enumeration expressing whether the Port is used for "
407 "import into the Library/System which scopes and names it "
408 "(value=1), export from the Library/System (value=2), or "
409 "both (value=3)."),
410 ValueMap {"0", "1", "2", "3"},
411 Values {"Unknown", "Import", "Export",
412 "Both Import and Export"} ]
413 uint16 Direction;
414 };
415
416
417 // ===================================================================
418 // LibraryExchange
419 // ===================================================================
420 [Association, Version ("2.6.0"), Description (
421 kumpf 1.2 "LibraryExchange indicates that two StorageLibraries are "
422 "connected through their InterLibraryPorts.") ]
423 class CIM_LibraryExchange : CIM_Dependency {
424
425 [Override ("Antecedent"), Description (
426 "The InterLibraryPort of one StorageLibrary.") ]
427 CIM_InterLibraryPort REF Antecedent;
428
429 [Override ("Dependent"), Description (
430 "The InterLibraryPort of the connected Library.") ]
431 CIM_InterLibraryPort REF Dependent;
432
433 [Description (
434 "Enumeration indicating whether the Antecedent (value=1), "
435 "Dependent (value=2), or neither Library (value=3) currently "
436 "has access to the Port."),
437 ValueMap {"0", "1", "2", "3"},
438 Values {"Unknown", "Antecedent", "Dependent", "Neither"} ]
439 uint16 CurrentlyAccessingPort;
440 };
441
442 kumpf 1.2
443 // ===================================================================
444 // LabelReader
445 // ===================================================================
446 [Version ("2.6.0"), Description (
447 "LabelReaders represent hardware capable of scanning or reading "
448 "a physical label or the NonVolatileMemory on a PhysicalMedia. "
449 "Examples of labels include barcode and OCR tags.") ]
450 class CIM_LabelReader : CIM_LogicalDevice {
451
452 [Description (
453 "An array of enumerated integers describing the formats of "
454 "the labels that can be read or scanned by the LabelReader. "
455 "The values specified for this property correspond to "
456 "those defined for CIM_PhysicalMedia.LabelFormats."),
457 ValueMap {"0", "1", "2", "3", "4", "5"},
458 Values {"Barcode", "Radio Frequency Identification",
459 "OCR (Optical Character Recognition)",
460 "MICR (Magnetic Ink Character Recognition)",
461 "7 Character Barcode", "9 Character Barcode"},
462 ModelCorrespondence {"CIM_PhysicalMedia.LabelFormats"} ]
463 kumpf 1.2 uint16 SupportedFormats[];
464
465 [Description (
466 "The technology used by the LabelReader. One entry of the "
467 "Values array requires some explanation - \"Memory Reader\". "
468 "The latter describes the ability to access memory in a "
469 "PhysicalMedia's packaging (for example, memory on an AIT "
470 "tape). The existence of this Memory is indicated by the "
471 "MemoryWithMedia association on the physical side, or by "
472 "AssociatedMemory on the logical side."),
473 ValueMap {"0", "1", "2", "3", "4", "5", "6"},
474 Values {"Unknown", "Other", "Laser", "Infrared", "RF",
475 "Camera", "Memory Reader"} ]
476 uint16 Technology;
477 };
478
479
480 // ===================================================================
481 // AssociatedLabelReader
482 // ===================================================================
483 [Association, Version ("2.6.0"), Description (
484 kumpf 1.2 "A LogicalDevice may use or require one or more LabelReaders, to "
485 "scan barcodes or otherwise identify entities. This relationship "
486 "is described by the AssociatedLabelReader dependency.") ]
487 class CIM_AssociatedLabelReader : CIM_Dependency {
488
489 [Override ("Antecedent"), Description (
490 "The LabelReader.") ]
491 CIM_LabelReader REF Antecedent;
492
493 [Override ("Dependent"), Description (
494 "The Device that is dependent on the Reader Device.") ]
495 CIM_LogicalDevice REF Dependent;
496 };
497
498
499 // ===================================================================
500 // PickerLabelReader
501 // ===================================================================
502 [Association, Version ("2.6.0"), Description (
503 "PickerLabelReader is used to indicate that one or more Label"
504 "Readers works in conjunction with PickerElements, to identify "
505 kumpf 1.2 "PhysicalMedia as they are being picked/placed.") ]
506 class CIM_PickerLabelReader : CIM_AssociatedLabelReader {
507
508 [Override ("Antecedent"), Description (
509 "The LabelReader.") ]
510 CIM_LabelReader REF Antecedent;
511
512 [Override ("Dependent"), Description (
513 "The PickerElement that is dependent on the Reader Device.") ]
514 CIM_PickerElement REF Dependent;
515 };
516
517
518 // ===================================================================
519 // AccessLabelReader
520 // ===================================================================
521 [Association, Version ("2.6.0"), Description (
522 "AccessLabelReader is used to indicate that one or more Label"
523 "Readers works in conjunction with MediaAccessDevices, "
524 "to identify PhysicalMedia before read/write.") ]
525 class CIM_AccessLabelReader : CIM_AssociatedLabelReader {
526 kumpf 1.2
527 [Override ("Antecedent"), Description (
528 "The LabelReader.") ]
529 CIM_LabelReader REF Antecedent;
530
531 [Override ("Dependent"), Description (
532 "The MediaAccessDevice that is dependent on the Reader "
533 "Device.") ]
534 CIM_MediaAccessDevice REF Dependent;
535 };
536
537
538 // ===================================================================
539 // LabelReaderStatInfo
540 // ===================================================================
541 [Version ("2.6.0"), Description (
542 "Statistics for a LabelReader, related to read successes, "
543 "failures and retries.") ]
544 class CIM_LabelReaderStatInfo : CIM_DeviceStatisticalInformation {
545
546 [Counter, Description (
547 kumpf 1.2 "The number of successful physical label scans.") ]
548 uint64 ScanSuccesses;
549
550 [Counter,
551 Description ("The number of failed physical label scans.") ]
552 uint64 ScanFailures;
553
554 [Counter,
555 Description ("The number of retried physical label scans.") ]
556 uint64 ScanRetries;
557
558 [Description (
559 "Method to reset the statistical counters. The method "
560 "takes one parameter as input - an integer indicating which "
561 "counter to reset. For this input parameter, 0 indicates all, "
562 "1 resets the \"Scan Successes\" counter, 2 resets the "
563 "\"Scan Failures\" counter, and 3 resets the \"Scan Retries\" "
564 "counter. The method returns 0 if successful, 1 if not "
565 "supported, and any other value if an error occurred. A method "
566 "is specified so that the Device's instrumentation can also "
567 "reset its internal processing and counters. \n"
568 kumpf 1.2 "In a subclass, the set of possible return codes should be "
569 "specified in a ValueMap qualifier on the method. The strings "
570 "to which the ValueMap contents are 'translated' can be "
571 "specified as a Values array qualifier.") ]
572 uint32 ResetCounter (
573 [IN,
574 ValueMap {"0", "1", "2", "3"},
575 Values {"All", "Scan Successes", "Scan Failures",
576 "Scan Retries"} ]
577 uint16 SelectedCounter);
578 };
579
580 // ===================================================================
581 // PickerStatInfo
582 // ===================================================================
583 [Version ("2.6.0"), Description (
584 "Statistics for a PickerElement, related to pick/put successes, "
585 "retries and failures.") ]
586 class CIM_PickerStatInfo : CIM_DeviceStatisticalInformation {
587
588 [Counter, Description ("The number of successful picks.") ]
589 kumpf 1.2 uint64 PickSuccesses;
590
591 [Counter, Description ("The number of failed picks.") ]
592 uint64 PickFailures;
593
594 [Counter, Description ("The number of retried picks.") ]
595 uint64 PickRetries;
596
597 [Counter, Description ("The number of successful puts.") ]
598 uint64 PutSuccesses;
599
600 [Counter, Description ("The number of failed puts.") ]
601 uint64 PutFailures;
602
603 [Counter, Description ("The number of retried puts.") ]
604 uint64 PutRetries;
605
606 [Description (
607 "Method to reset the statistical counters. The method takes "
608 "one parameter as input - an integer indicating which counter "
609 "to reset. For this input parameter, 0 indicates all, 1-3 "
610 kumpf 1.2 "reset the 'pick'-related counters, and 4-6 reset the 'put'-"
611 "related counters. The method returns 0 if successful, 1 if "
612 "not supported, and any other value if an error occurred. A "
613 "method is specified so that the Device's instrumentation can "
614 "also reset its internal pocessing and counters. \n"
615 "In a subclass, the set of possible return codes should be "
616 "specified in a ValueMap qualifier on the method. The strings "
617 "to which the ValueMap contents are 'translated' can be "
618 "specified as a Values array qualifier.") ]
619 uint32 ResetCounter (
620 [IN,
621 ValueMap {"0", "1", "2", "3", "4", "5", "6"},
622 Values {"All", "Pick Successes", "Pick Failures",
623 "Pick Retries", "Put Successes", "Put Failures",
624 "Put Retries"} ]
625 uint16 SelectedCounter);
626 };
627
628 // ===================================================================
629 // LabelReaderStatData
630 // ===================================================================
631 kumpf 1.2 [Version ("2.7.0"), Description (
632 "Statistics for a LabelReader, related to read successes, "
633 "failures and retries. The element whose statistics are "
634 "described is associated using the relationship, "
635 "ElementStatisticalData.") ]
636 class CIM_LabelReaderStatData : CIM_StatisticalData {
637
638 [Counter, Description (
639 "The number of successful physical label scans.") ]
640 uint64 ScanSuccesses;
641
642 [Counter,
643 Description ("The number of failed physical label scans.") ]
644 uint64 ScanFailures;
645
646 [Counter,
647 Description ("The number of retried physical label scans.") ]
648 uint64 ScanRetries;
649 };
650
651
652 kumpf 1.2 // ===================================================================
653 // PickerStatData
654 // ===================================================================
655 [Version ("2.7.0"), Description (
656 "Statistics for a PickerElement, related to pick/put successes, "
657 "retries and failures. The element whose statistics are described "
658 "is associated using the relationship, ElementStatisticalData.") ]
659 class CIM_PickerStatData : CIM_StatisticalData {
660
661 [Counter, Description ("The number of successful picks.") ]
662 uint64 PickSuccesses;
663
664 [Counter, Description ("The number of failed picks.") ]
665 uint64 PickFailures;
666
667 [Counter, Description ("The number of retried picks.") ]
668 uint64 PickRetries;
669
670 [Counter, Description ("The number of successful puts.") ]
671 uint64 PutSuccesses;
672
673 kumpf 1.2 [Counter, Description ("The number of failed puts.") ]
674 uint64 PutFailures;
675
676 [Counter, Description ("The number of retried puts.") ]
677 uint64 PutRetries;
678 };
679
680
681 // ===================================================================
682 // end of file
683 // ===================================================================
|