/// \defgroup PkgTDS2Ref Reference Manual
/// \defgroup PkgTDS2Concepts Concepts
/// \ingroup PkgTDS2Ref
/*!
\addtogroup PkgTDS2Ref
\cgalPkgDescriptionBegin{2D Triangulation Data Structure,PkgTDS2}
\cgalPkgPicture{tds_small.png}
\cgalPkgSummaryBegin
\cgalPkgAuthors{Sylvain Pion and Mariette Yvinec}
\cgalPkgDesc{This package provides a data structure to store a two-dimensional triangulation that has the  topology of a two-dimensional sphere.  The package acts as a container for the vertices and faces of the triangulation  and provides basic  combinatorial operation on the triangulation. }
\cgalPkgManuals{Chapter_2D_Triangulation_Data_Structure,PkgTDS2Ref}
\cgalPkgSummaryEnd
\cgalPkgShortInfoBegin
\cgalPkgSince{2.2}
\cgalPkgBib{cgal:py-tds2}
\cgalPkgLicense{\ref licensesGPL "GPL"}
\cgalPkgShortInfoEnd
\cgalPkgDescriptionEnd

The triangulation data structure can be seen as a container for the
faces and vertices of a triangulation. This class also takes care of
all the combinatorial operations performed on the triangulation.

The class `CGAL::Triangulation_data_structure_2<Vb,Fb>` is a model of
the concept `TriangulationDataStructure_2`.  which includes the
sub-concepts `TriangulationDataStructure_2::Face` and
`TriangulationDataStructure_2::Vertex`.

To ensure all the flexibility of the triangulation classes,
described and in Section \ref Section_2D_Triangulations_Flexibility "Flexibility" of
Chapter \ref Chapter_2D_Triangulations "2D Triangulations", the model
`CGAL::Triangulation_data_structure_2<Vb,Fb>` has two template
parameters.  The class `CGAL::Triangulation_data_structure_2<Vb,Fb>`
derives its `Vertex` and `Face` types from the two template parameters
\c %Vb and \c %Fb respectively.

If the triangulation data structure is used alone, these parameters
have to be instantiated by models of the concepts
`TriangulationDSFaceBase_2` and `TriangulationDSVertexBase_2`. These
concepts are described in this chapter together with their default
models `CGAL::Triangulation_ds_face_base_2<Tds>` and
`CGAL::Triangulation_ds_vertex_base_2<Tds>`.

If the triangulation data structure is plugged into a triangulation
class, the parameters have to be instantiated by models of different
refining concepts according to the actual type of the triangulation.
These refining concepts and their models are described in Chapter
\ref Chapter_2D_Triangulations "2D Triangulations".

\cgalClassifedRefPages
\cgalCRPSection{Concepts}
- `TriangulationDataStructure_2`
- `TriangulationDataStructure_2::Face`
- `TriangulationDataStructure_2::Face_data`
- `TriangulationDataStructure_2::Vertex`

- `TriangulationDSFaceBase_2`
- `TriangulationDSVertexBase_2`

\cgalCRPSection{Classes}
- `CGAL::Triangulation_data_structure_2<Vb,Fb>`
- `CGAL::Triangulation_ds_face_base_2<Tds>`
- `CGAL::Triangulation_ds_vertex_base_2<Tds>`

- `CGAL::Triangulation_cw_ccw_2`


*/
