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