NAME

Text::LAS::Parser - Perl extension to parse Log ASCII Standard (LAS) Version 2.0 format.

SYNOPSIS

  use Text::LAS::Parser;
  my $las = Text::LAS::Parser->new( new IO::File( 'data.las' ) ) or die;
  foreach my $curve ( $las->get_info_in_non_A_sections( 'C' ) ) {
    my ( $mnem, $unit, $data, $desc ) = @$curve;
    print "$desc [$unit],";
  }
  print "\n";
  while( my $record = $las->read_Section_A( '' ) ) {
    print join( ',', @$record ),"\n";
  }

DESCRIPTION

This module is in order to parse Log ASCII Standard (LAS) Version 2.0. This module can read `one line per depth step' mode only and does not support `multiple lines per depth step' mode. To write this, I read the following references.

  LAS Version 2.0 Updated: July 2009
    A Digital Standard for Logs
    Canadian Well Logging Society (www.cwls.org)
    http://www.cwls.org/las_info.php

EXPORT

new

Constructs with the following parameter.

  IO object to be read by this object.

By constructing, the object parses the LAS file down to the line of the beginning of Section `A' (ASCII Log Data).

The constructor may not return anything in case of bad input. Caller should check the returned value.

get_info_in_non_A_sections

Returns information in sections other than Section A. The following parameter is required.

  Text string of a upper-case alphabet represents a section to request.

Sections `V', `W', `C', and `P' may available. Section `O' is not read by this module even if the input contains.

This method returns an array contains references for arrays. Each array consists of (mnemonic, units, data, description). This method may not return anything if argued section was not found.

read_Section_A

Read one line from Section `A' in the input and returns the data. The following parameter is optional.

  Value to represent null value in returning values

This method returns a reference for an array containing the data. Value false will be returned when the object reaches to the end of the input.

AUTHOR

Kyoma Takahashi

COPYRIGHT

Copyright (C) 2010 by Kyoma Takahashi

LICENSE

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.