Brian M. Ames
and 1 contributors

NAME

Rinchi::CIGIPP::SymbolClone - Perl extension for the Common Image Generator Interface - Symbol Clone data packet. data packet. =head1 SYNOPSIS

  use Rinchi::CIGIPP::SymbolClone;
  my $sym_clone = Rinchi::CIGIPP::SymbolClone->new();

  $packet_type = $sym_clone->packet_type();
  $packet_size = $sym_clone->packet_size();
  $symbol_ident = $sym_clone->symbol_ident(41795);
  $source_type = $sym_clone->source_type(Rinchi::CIGIPP->Symbol);
  $source_ident = $sym_clone->source_ident(42236);

DESCRIPTION

The Symbol Clone packet is used to create an exact copy of a symbol. The copy will inherit all attributes that were defined by the Symbol Text Definition, Symbol Circle Definition, Symbol Line Definition, or Symbol Clone packet that was used to create the original symbol. Any operations that are performed upon the copy (e.g., translation, rotation, or change of color) will not affect the original unless otherwise dictated by a hierarchical relationship.

Alternatively, the Symbol Clone packet can be used to instantiate an IG-defined symbol template (see Section 3.3.3). Operations performed on the symbol instance will not affect the template.

When a new symbol is created with a Symbol Clone packet, that symbol is hidden by default. The symbol will remain hidden until its state is changed with a Symbol Control packet.

EXPORT

None by default.

#==============================================================================

new $sym_clone = Rinchi::CIGIPP::SymbolClone->new()

Constructor for Rinchi::SymbolClone.

sub packet_type()
 $value = $sym_clone->packet_type();

Data Packet Identifier.

This attribute identifies this data packet as the Symbol Clone packet. The value of this attribute must be 33.

sub packet_size()
 $value = $sym_clone->packet_size();

Data Packet Size.

This attribute indicates the number of bytes in this data packet. The value of this attribute must be 16.

sub symbol_ident([$newValue])
 $value = $sym_clone->symbol_ident($newValue);

Symbol ID.

This attribute specifies the identifier of the symbol that is being defined.

This identifier must be unique among all existing symbols. If a symbol with the specified identifier already exists, then that symbol and any children will be destroyed and a new symbol created.

sub source_type([$newValue])
 $value = $sym_clone->source_type($newValue);

Source Type.

This attribute determines whether the new symbol will be a copy of an existing symbol or an instance of an IG-defined symbol template.

    Symbol           0
    SymbolTemplate   1
sub source_ident([$newValue])
 $value = $sym_clone->source_ident($newValue);

Source ID.

This attribute identifies the symbol to be copied or the symbol template to be instantiated. If Source Type is set to Symbol (0), then this attribute will specify the identifier of the symbol to be copied.

If Source Type is set to Symbol Template (1), then this attribute will specify the identifier of the symbol template to be instantiated.

If the specified source does not exist, then the packet will be ignored.

sub pack()
 $value = $sym_clone->pack();

Returns the packed data packet.

sub unpack()
 $value = $sym_clone->unpack();

Unpacks the packed data packet.

sub byte_swap()
 $obj_name->byte_swap();

Byte swaps the packed data packet.

SEE ALSO

Refer the the Common Image Generator Interface ICD which may be had at this URL: http://cigi.sourceforge.net/specification.php

AUTHOR

Brian M. Ames, <bmames@apk.net>

COPYRIGHT AND LICENSE

Copyright (C) 2009 by Brian M. Ames

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.6 or, at your option, any later version of Perl 5 you may have available.

2 POD Errors

The following errors were encountered while parsing the POD:

Around line 78:

'=item' outside of any '=over'

Around line 317:

You forgot a '=back' before '=head1'