ATLAS Offline Software
Loading...
Searching...
No Matches
FaceList Class Reference

#include <BooleanProcessor.h>

Collaboration diagram for FaceList:

Public Member Functions

 FaceList (std::vector< ExtFace > &a_faces)
 ~FaceList ()
void clean ()
int front ()
void push_back (int i)
void remove (int i)

Private Attributes

std::vector< ExtFace > & m_faces
int m_ihead
int m_ilast

Detailed Description

Definition at line 262 of file BooleanProcessor.h.

Constructor & Destructor Documentation

◆ FaceList()

FaceList::FaceList ( std::vector< ExtFace > & a_faces)
inline

Definition at line 271 of file BooleanProcessor.h.

271: m_faces(a_faces),m_ihead(0),m_ilast(0) {}
std::vector< ExtFace > & m_faces

◆ ~FaceList()

FaceList::~FaceList ( )
inline

Definition at line 272 of file BooleanProcessor.h.

272{}

Member Function Documentation

◆ clean()

void FaceList::clean ( )
inline

Definition at line 274 of file BooleanProcessor.h.

274{ m_ihead = 0; m_ilast = 0; }

◆ front()

int FaceList::front ( )
inline

Definition at line 275 of file BooleanProcessor.h.

275{ return m_ihead; }

◆ push_back()

void FaceList::push_back ( int i)
inline

Definition at line 277 of file BooleanProcessor.h.

277 {
278 if (m_ilast == 0) { m_ihead = i; } else { m_faces[m_ilast].inext = i; }
279 ExtFace& face = m_faces[i]; //G.Barrand : optimize.
280 face.iprev = m_ilast;
281 face.inext = 0;
282 m_ilast = i;
283 }
#define ExtFace

◆ remove()

void FaceList::remove ( int i)
inline

Definition at line 285 of file BooleanProcessor.h.

285 {
286 ExtFace& face = m_faces[i]; //G.Barrand : optimize.
287 if (m_ihead == i) {
288 m_ihead = face.inext;
289 }else{
290 m_faces[face.iprev].inext = face.inext;
291 }
292 if (m_ilast == i) {
293 m_ilast = face.iprev;
294 }else{
295 m_faces[face.inext].iprev = face.iprev;
296 }
297 face.iprev = 0;
298 face.inext = 0;
299 }

Member Data Documentation

◆ m_faces

std::vector<ExtFace>& FaceList::m_faces
private

Definition at line 264 of file BooleanProcessor.h.

◆ m_ihead

int FaceList::m_ihead
private

Definition at line 266 of file BooleanProcessor.h.

◆ m_ilast

int FaceList::m_ilast
private

Definition at line 267 of file BooleanProcessor.h.


The documentation for this class was generated from the following file: