## CGAL::Arr_file_scanner<Arrangement>

### Definition

This class contains functions for reading the Arrangement components from a given input stream. Users have to make sure that methods for reading Point and Curve defined in the Arrangement traits class are provided when using the input stream they choose to work with. This class is templated with Arrangement, and hence the user can work with Arr_file_scanner<Arrangement> with its own Arrangement.

### Inherits From

Pm_file_scanner

### Types

Arr_file_scanner<Arrangement>::Traits
| Representation of a bounded curve.
Arr_file_scanner<Arrangement>::Point
| A type to hold the location of a vertex in the plane.
Arr_file_scanner<Arrangement>::X_curve
| A type to hold an x-monotone curve in the plane.
Arr_file_scanner<Arrangement>::Curve
| A type to hold a curve in the plane.
Arr_file_scanner<Arrangement>::Curve_node
| The Arrangement curve node type.
Arr_file_scanner<Arrangement>::Subcurve_node
| The Arrangement subcurve node type.
Arr_file_scanner<Arrangement>::Edge_node
| The Arrangement edge node type.

### Creation

Arr_file_scanner<Arrangement> arr_file_scanner ( istream& in);
| A constructor for a given input stream.

Arr_file_scanner<Arrangement> arr_file_scanner ( | istream& in, File_header header);

| A constructor for a given input stream and File header.

The operation Arr_file_scanner<Arrangement> supports are all the operations Pm_file_scanner supported plus the following:

### Operations

void | arr_file_scanner.scan_Curve_node ( Curve_node* cn)
|  | scans a curve node from the input stream.

void

arr_file_scanner.scan_Subcurve_node ( | Subcurve_node* scn)

|  | scans a subcurve node from the input stream.
void | arr_file_scanner.scan_Edge_node ( Edge_node* en)
|  | scans an edge node from the input stream.