1package X11::Xlib::Opaque; 2use X11::Xlib (); 3 4# All modules in dist share a version 5BEGIN { our $VERSION= $X11::Xlib::VERSION; } 6 7@X11::Xlib::Visual::ISA= ( __PACKAGE__ ); 8@X11::Xlib::GC::ISA= ( __PACKAGE__ ); 9 101; 11__END__ 12 13=head1 NAME 14 15X11::Xlib::Opaque - Base class for X11 opaque structures 16 17=head1 DESCRIPTION 18 19Base class for the various hidden C-structs of Xlib, which are represented 20as a blessed opaque perl scalar, or blessed perl Hashref with the pointer 21tucked away in XS magic. 22 23=head1 ATTRIBUTES 24 25=head2 display 26 27Find the display associated with this object. This may return undef if the 28opaque object was constructed from a source where the Display was unknown. 29(for example, accessing the L<X11::Xlib::XVisualInfo/visual> when that struct 30itself doesn't have a known Display. 31 32(all display references are stored in a private hashref in X11::Xlib package 33 namespace, keyed by L<refaddr|Scalar::Util/refaddr>. 34 All objects with a display attached in that 35 manner should have a DESTROY that removes the reference.) 36 37=head2 pointer_bytes 38 39Return the raw pointer as a string of bytes (i.e. length 8 for 64-bit) 40 41=head2 pointer_int 42 43Return the raw pointer value as an integer 44 45=head1 AUTHOR 46 47Olivier Thauvin, E<lt>nanardon@nanardon.zarb.orgE<gt> 48 49Michael Conrad, E<lt>mike@nrdvana.netE<gt> 50 51=head1 COPYRIGHT AND LICENSE 52 53Copyright (C) 2009-2010 by Olivier Thauvin 54 55Copyright (C) 2017 by Michael Conrad 56 57This library is free software; you can redistribute it and/or modify 58it under the same terms as Perl itself, either Perl version 5.10.0 or, 59at your option, any later version of Perl 5 you may have available. 60 61=cut 62