## CGAL::HalfedgeDS_face_base<Refs>

### Definition

The class HalfedgeDS_face_base<Refs> is a model of the HalfedgeDSFace concept. Refs is an instantiation of a HalfedgeDS. The template declaration of HalfedgeDS_face_base<Refs> has three parameters with some defaults that allow to select various flavors of faces. The declaration is best explained with the two following declarations, essentially hiding an implementation dependent default setting:

template <class Refs, class T = CGAL::Tag_true>
class HalfedgeDS_face_base;

template <class Refs, class T, class Plane>
class HalfedgeDS_face_base;

HalfedgeDS_face_base<Refs> defines a face including a reference to an incident halfedge.

CGAL::HalfedgeDS_face_base<Refs,CGAL::Tag_false> is a face without a reference to an incident halfedge. It is empty besides the required type definitions. It can be used for deriving own faces. See also CGAL::HalfedgeDS_face_min_base<Refs>.

CGAL::HalfedgeDS_face_base<Refs,CGAL::Tag_true,Plane> is a face with a reference to an incident halfedge and it stores a plane equation of type Plane. It can be used as a face for a model of the PolyhedronItems_3 concept.

CGAL::HalfedgeDS_face_base<Refs,CGAL::Tag_false,Plane> is a face without a reference to an incident halfedge and it stores a plane equation of type Plane. It can be used as a face for a model of the PolyhedronItems_3 concept.

#include <CGAL/HalfedgeDS_face_base.h>

### Is Model for the Concept

HalfedgeDSFace

### Types

HalfedgeDS_face_base<Refs>::Plane
| plane type for three argument version.

### Creation

HalfedgeDS_face_base<Refs> f;
| default constructor.
HalfedgeDS_face_base<Refs> f ( Plane pln);
| initialized with plane pln.

### Operations

Plane& | f.plane ()
const Plane& | f.plane () const

### See Also

HalfedgeDS<Traits,Items,Alloc>
HalfedgeDSItems
PolyhedronItems_3
CGAL::HalfedgeDS_items_2
CGAL::HalfedgeDS_vertex_base<Refs>
CGAL::HalfedgeDS_halfedge_base<Refs>
CGAL::HalfedgeDS_face_min_base<Refs>