Brian M. Ames
and 1 contributors


Rinchi::CIGIPP::TerrestrialSurfaceConditionsControl - Perl extension for the Common Image Generator Interface - Terrestrial Surface Conditions Control data packet. data packet. =head1 SYNOPSIS

  use Rinchi::CIGIPP::TerrestrialSurfaceConditionsControl;
  my $tsc_ctl = Rinchi::CIGIPP::TerrestrialSurfaceConditionsControl->new();

  $packet_type = $tsc_ctl->packet_type();
  $packet_size = $tsc_ctl->packet_size();
  $region_ident = $tsc_ctl->region_ident(32124);
  $entity_ident = $tsc_ctl->entity_ident(34318);
  $surface_condition_ident = $tsc_ctl->surface_condition_ident(62625);
  $severity = $tsc_ctl->severity(15);
  $scope = $tsc_ctl->scope(Rinchi::CIGIPP->RegionalScope);
  $surface_condition_enable = $tsc_ctl->surface_condition_enable(Rinchi::CIGIPP->Disable);
  $coverage = $tsc_ctl->coverage(174);


The Terrestrial Surface Conditions Control packet is used to specify the conditions of the terrain surface. These typically describe driving conditions, runway contaminants, or conditions that would otherwise impede or add risk to the movement of vehicles on the ground.

The possible surface conditions are IG-dependent. Examples might range from weather-related conditions such as dry, wet, icy, or slushy, to hazards such as sand, dirt, and gravel.

Regional terrestrial surface conditions always take precedence over the global surface conditions. Once the surface conditions of a region are set, global changes will not affect the surface conditions within that region unless it is disabled. Global changes will, however, change the conditions within a region's transition perimeter.

If two or more regions overlap, the value of each surface condition attribute within the area of overlap should be the average of the values determined by the overlapping regions.

To determine the terrestrial surface conditions within areas of overlap or through a transition perimeter, the Host can request the conditions at a specific latitude and longitude by issuing an Environmental Conditions Request packet.


None by default.


new $tsc_ctl = Rinchi::CIGIPP::TerrestrialSurfaceConditionsControl->new()

Constructor for Rinchi::TerrestrialSurfaceConditionsControl.

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

Data Packet Identifier.

This attribute identifies this data packet as the Terrestrial Surface Conditions Control packet. The value of this attribute must be 15.

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

Data Packet Size. This attribute indicates the number of bytes in this data packet. The value of this attribute must be 8.

sub region_ident([$newValue])
 $value = $tsc_ctl->region_ident($newValue);

Region ID.

This attribute specifies the region to which the surface conditions are confined.

sub entity_ident([$newValue])
 $value = $tsc_ctl->entity_ident($newValue);

Entity ID.

This attribute specifies the environmental entity to which the surface condition attributes in this packet are applied.

sub surface_condition_ident([$newValue])
 $value = $tsc_ctl->surface_condition_ident($newValue);

Surface Condition ID.

This attribute identifies a surface condition or contaminant. Multiple conditions can be specified by sending multiple Terrestrial Surface Conditions Control packets.When this attribute is set to Dry (0), all existing surface conditions will be removed within the specified scope. All other surface condition codes are IG-dependent.

sub severity([$newValue])
 $value = $tsc_ctl->severity($newValue);


This attribute determines the degree of severity for the specified surface contaminant(s). A value of zero (0) indicates that any effects of the contaminant are negligible. A value of 31 indicates that the surface is impassable.

sub scope([$newValue])
 $value = $tsc_ctl->scope($newValue);


This attribute determines whether the specified surface conditions are applied globally, regionally, or to an environmental entity. If this value is set to Regional (1), the conditions are confined to the region specified by Region ID. If this value is set to Entity (2), the conditions are applied to the model specified by Entity ID.

    GlobalScope     0
    RegionalScope   1
    EntityScope     2
sub surface_condition_enable([$newValue])
 $value = $tsc_ctl->surface_condition_enable($newValue);

Surface Condition Enable.

This attribute specifies whether the surface condition attribute identified by the Surface Condition ID attribute should be enabled.

    Disable   0
    Enable    1
sub coverage([$newValue])
 $value = $tsc_ctl->coverage($newValue);


This attribute determines the degree of coverage of the specified surface contaminant.

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

Returns the packed data packet.

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

Unpacks the packed data packet.

sub byte_swap()

Byte swaps the packed data packet.


Refer the the Common Image Generator Interface ICD which may be had at this URL:


Brian M. Ames, <>


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 90:

'=item' outside of any '=over'

Around line 424:

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