ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
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) {}

◆ ~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  }

◆ 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:
ExtFace::iprev
int iprev
Definition: BooleanProcessor.h:213
ExtFace
Definition: BooleanProcessor.h:204
lumiFormat.i
int i
Definition: lumiFormat.py:92
FaceList::m_ilast
int m_ilast
Definition: BooleanProcessor.h:267
FaceList::m_ihead
int m_ihead
Definition: BooleanProcessor.h:266
ExtFace::inext
int inext
Definition: BooleanProcessor.h:214
FaceList::m_faces
std::vector< ExtFace > & m_faces
Definition: BooleanProcessor.h:264