The class Polygon_set_2<Kernel,Container,Dcel> represents sets of linear polygons with holes. The first two template parameters (Kernel and Container) are used to instantiate the type CGAL::Polygon_2<Kernel,Container>. This type is used to represents the outer boundary of every set member and the boundaries of all holes of every set member.
The third template parameter Dcel should be instantiated with a model of the concept GeneralPolygonSetDcel. It is instantiated by default with the type Gps_default_dcel<Traits>. You can override this default, with a different DCEL class, typically an extension of the Gps_default_dcel class template. Overriding the default is necessary only if you intend to obtain the undelying internal arrangement and process it further.
#include <CGAL/Polygon_set_2.h>