/usr/include/gmsh/GEdgeLoop.h is in libgmsh-dev 2.15.0+dfsg1-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | // Gmsh - Copyright (C) 1997-2016 C. Geuzaine, J.-F. Remacle
//
// See the LICENSE.txt file for license information. Please report all
// bugs and problems to the public mailing list <gmsh@onelab.info>.
#ifndef _GEDGE_LOOP_H_
#define _GEDGE_LOOP_H_
#include "GEdge.h"
class GEdgeSigned
{
public:
int _sign;
GEdge *ge;
GEdgeSigned(int i, GEdge *g) : _sign(i), ge(g) {}
GVertex *getBeginVertex() const
{
return (_sign == 1) ? ge->getBeginVertex() : ge->getEndVertex();
}
GVertex *getEndVertex() const
{
return (_sign != 1) ? ge->getBeginVertex() : ge->getEndVertex();
}
void print() const;
int getSign() const { return _sign; }
};
class GEdgeLoop
{
private:
std::list<GEdgeSigned> loop;
public:
typedef std::list<GEdgeSigned>::iterator iter;
typedef std::list<GEdgeSigned>::const_iterator citer;
GEdgeLoop(const std::list<GEdge*> &);
inline iter begin() { return loop.begin(); }
inline iter end() { return loop.end(); }
inline citer begin() const { return loop.begin(); }
inline citer end() const { return loop.end(); }
inline void erase(iter it){ loop.erase(it); }
int count(GEdge*) const;
int count() const { return (int)loop.size(); }
};
#endif
|