// Copyright (c) 1997, 2012 INRIA Sophia-Antipolis (France). // All rights reserved. // // This file is part of CGAL (www.cgal.org). // // $URL: https://github.com/CGAL/cgal/blob/v5.2/Alpha_shapes_3/include/CGAL/Alpha_shape_vertex_base_3.h $ // $Id: Alpha_shape_vertex_base_3.h 0779373 2020-03-26T13:31:46+01:00 Sébastien Loriot // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-Commercial // // // Author(s) : Tran Kai Frank DA #ifndef CGAL_ALPHA_SHAPE_VERTEX_BASE_3_H #define CGAL_ALPHA_SHAPE_VERTEX_BASE_3_H #include #include #include #include #include #include namespace CGAL { template class Alpha_shape_vertex_base_3 : public Default::Get >::type { typedef typename Default::Get >::type Vb; public: typedef typename Vb::Cell_handle Cell_handle; template < typename TDS2 > struct Rebind_TDS { typedef typename Vb::template Rebind_TDS::Other Vb2; typedef Alpha_shape_vertex_base_3 Other; }; typedef typename Vb::Point Point; typedef typename internal::Alpha_nt_selector_3< Gt, ExactAlphaComparisonTag, Weighted_tag>::Type_of_alpha NT; typedef CGAL::Alpha_status Alpha_status; typedef Compact_container Alpha_status_container; typedef typename Alpha_status_container::const_iterator Alpha_status_const_iterator; typedef typename Alpha_status_container::iterator Alpha_status_iterator; private: Alpha_status _as; public: Alpha_shape_vertex_base_3() : Vb() {} Alpha_shape_vertex_base_3(const Point& p) : Vb(p) {} Alpha_shape_vertex_base_3(const Point& p, Cell_handle c) : Vb(p, c) {} Alpha_status* get_alpha_status() { return &_as;} void set_alpha_status(Alpha_status_iterator as) {_as= as;} }; } //namespace CGAL #endif // CGAL_ALPHA_SHAPE_VERTEX_BASE_3_H