xref: /onnv-gate/usr/src/cmd/perl/contrib/Sun/Solaris/Exacct/pod/Item.pod (revision 12388:1bc8d55b0dfd)
10Sstevel@tonic-gate#
2*12388SJohn.Sonnenschein@Sun.COM# Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved.
30Sstevel@tonic-gate#
4*12388SJohn.Sonnenschein@Sun.COM
50Sstevel@tonic-gate#
60Sstevel@tonic-gate# Sun::Solaris::Exacct::Object::Item documentation.
70Sstevel@tonic-gate#
80Sstevel@tonic-gate
90Sstevel@tonic-gate=head1 NAME
100Sstevel@tonic-gate
110Sstevel@tonic-gateSun::Solaris::Exacct::Object::Item - exacct item manipulation
120Sstevel@tonic-gate
130Sstevel@tonic-gate=head1 SYNOPSIS
140Sstevel@tonic-gate
150Sstevel@tonic-gate use Sun::Solaris::Exacct::Object;
160Sstevel@tonic-gate my $ea_item = Sun::Solaris::Exacct::Object::Item->new(
170Sstevel@tonic-gate     &EXT_UINT64 | &EXC_DEFAULT | &EXD_PROC_PID, $$);
180Sstevel@tonic-gate
190Sstevel@tonic-gateThis module is used for manipulating C<libexacct(3LIB)> data Items. A
200Sstevel@tonic-gatelibexacct Item is represented as an opaque reference blessed into the
210Sstevel@tonic-gateC<Sun::Solaris::Exacct::Object::Item> class, which is a subclass of the
220Sstevel@tonic-gateC<Sun::Solaris::Exacct::Object> class. The underlying libexacct data types are
230Sstevel@tonic-gatemapped onto Perl types as follows:
240Sstevel@tonic-gate
250Sstevel@tonic-gateB<C< libexacct type                Perl internal type>>
260Sstevel@tonic-gate
270Sstevel@tonic-gate EXT_UINT8                     IV (integer)
280Sstevel@tonic-gate
290Sstevel@tonic-gate EXT_UINT16                    IV (integer)
300Sstevel@tonic-gate
310Sstevel@tonic-gate EXT_UINT32                    IV (integer)
320Sstevel@tonic-gate
330Sstevel@tonic-gate EXT_UINT64                    IV (integer)
340Sstevel@tonic-gate
350Sstevel@tonic-gate EXT_DOUBLE                    NV (double)
360Sstevel@tonic-gate
370Sstevel@tonic-gate EXT_STRING                    PV (string)
380Sstevel@tonic-gate
390Sstevel@tonic-gate EXT_RAW                       PV (string)
400Sstevel@tonic-gate
410Sstevel@tonic-gate EXT_EXACCT_OBJECT             Sun::Solaris::Exacct::Object subclass
420Sstevel@tonic-gate
430Sstevel@tonic-gate=head2 Constants
440Sstevel@tonic-gate
450Sstevel@tonic-gateNone.
460Sstevel@tonic-gate
470Sstevel@tonic-gate=head2 Functions
480Sstevel@tonic-gate
490Sstevel@tonic-gateNone.
500Sstevel@tonic-gate
510Sstevel@tonic-gate=head2 Class methods
520Sstevel@tonic-gate
530Sstevel@tonic-gateClass methods include those inherited from the C<Sun::Solaris::Exacct::Object>
540Sstevel@tonic-gatebase class, plus the following:
550Sstevel@tonic-gate
560Sstevel@tonic-gateB<C<new($catalog, $value)>>
570Sstevel@tonic-gate
580Sstevel@tonic-gateThis method creates and returns a new C<Sun::Solaris::Exacct::Object::Item>.
590Sstevel@tonic-gateThe catalog tag can be either an integer or a
600Sstevel@tonic-gateC<Sun::Solaris::Exacct::Catalog>. This catalog tag controls the conversion of
610Sstevel@tonic-gatethe Perl value to the corresponding Perl exacct data type as described in the
620Sstevel@tonic-gatetable above. If the catalog tag has a type field of C<EXT_EXACCT_OBJECT>, the
630Sstevel@tonic-gatevalue must be a reference to either an Item or a Group object and the passed
640Sstevel@tonic-gateobject is recursively copied and stored inside the new Item. Because the
650Sstevel@tonic-gatereturned Item is constant, it is impossible, for example, to create an Item
660Sstevel@tonic-gaterepresenting CPU seconds and subsequently modify its value or change its
670Sstevel@tonic-gatecatalog value. This behavior is intended to prevent mismatches between the
680Sstevel@tonic-gatecatalog tag and the data value.
690Sstevel@tonic-gate
700Sstevel@tonic-gate=head2 Object methods
710Sstevel@tonic-gate
720Sstevel@tonic-gateObject methods are those inherited from the C<Sun::Solaris::Exacct::Object>.
730Sstevel@tonic-gate
740Sstevel@tonic-gate=head2 Exports
750Sstevel@tonic-gate
760Sstevel@tonic-gateNone.
770Sstevel@tonic-gate
780Sstevel@tonic-gate=head1 ATTRIBUTES
790Sstevel@tonic-gate
800Sstevel@tonic-gateSee C<attributes(5)> for descriptions of the following attributes:
810Sstevel@tonic-gate
820Sstevel@tonic-gate  ___________________________________________________________
830Sstevel@tonic-gate |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
840Sstevel@tonic-gate |_____________________________|_____________________________|
850Sstevel@tonic-gate | Availability                | CPAN (http://www.cpan.org)  |
860Sstevel@tonic-gate |_____________________________|_____________________________|
870Sstevel@tonic-gate | Interface Stability         | Evolving                    |
880Sstevel@tonic-gate |_____________________________|_____________________________|
890Sstevel@tonic-gate
900Sstevel@tonic-gate=head1 SEE ALSO
910Sstevel@tonic-gate
920Sstevel@tonic-gateC<Sun::Solaris::Exacct(3)>, C<Sun::Solaris::Exacct::Catalog(3)>,
930Sstevel@tonic-gateC<Sun::Solaris::Exacct::File(3)>, C<Sun::Solaris::Exacct::Object(3)>,
940Sstevel@tonic-gateC<Sun::Solaris::Exacct::Object::Group(3)>, C<libexacct(3LIB)>, C<attributes(5)>
95