GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
//1// face.h2// Bistellar3//4// Created by Alexander Thumm on 07.10.11.5// Copyright 2011 -. All rights reserved.6//78#ifndef Bistellar_face_h9#define Bistellar_face_h1011#include <iostream>12#include <deque>13#include "types.h"1415class Face16{17vertex_t * _vertices;18int _dimension;1920public:21Face();22Face(const vertex_t * vertices, int dimension);2324Face(const Face & cpy);25Face & operator=(const Face & cpy);2627~Face();2829bool operator==(const Face & cmp) const;30bool operator!=(const Face & cmp) const;3132int dimension() const;3334// returns a reference to the i-th vertex.35const vertex_t & vertex(unsigned int i) const;3637// returns the boundary face obtained by omitting the i-th vertex.38Face * createBoundaryFace(unsigned int i) const;3940// tests if the face is a subface of face41bool isSubfaceOf(const Face & face) const;424344// create linkFace45static Face linkFace(const Face & face, const face_list_t & linkFacets);46// create union47static Face unite(const Face & face1, const Face & face2);484950// serialization methods51friend std::ostream & operator<< (std::ostream & os, const Face & face);52friend std::istream & operator>> (std::istream & is, Face & face);53};5455// adds all boundaryfaces of face to listOfBoundaryfaces56void addBoundaryfacesOfFace(const Face & face, face_list_t & listOfBoundaryfaces);57// adds all subfaces of face to listOfSubfaces58void addSubfacesOfFace(const Face & face, face_list_t & listOfSubfaces);5960#endif616263