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