Richard Boegli's CnC_Generals_Zero_Hour Fork WIP
This is documentation of Richard Boegil's Zero Hour Fork
 
Loading...
Searching...
No Matches
CellAndObjectIntersection Class Reference

#include <PartitionManager.h>

Public Member Functions

 CellAndObjectIntersection ()
 
 ~CellAndObjectIntersection ()
 
void addCoverage (PartitionCell *cell, PartitionData *module)
 
void removeAllCoverage ()
 
PartitionCellgetCell ()
 
PartitionDatagetModule ()
 
CellAndObjectIntersectiongetPrevCoi ()
 
CellAndObjectIntersectiongetNextCoi ()
 
void friend_addToCellList (CellAndObjectIntersection **pListHead)
 
void friend_removeFromCellList (CellAndObjectIntersection **pListHead)
 

Detailed Description

This class (often called COI for short) is the abstraction of the intersection between an Object and a Partition Cell. For every Cell that an Object's geometry touches, even partially, we allocate a COI. This allows us to maintain an efficient two-way list, such that for every Object, we know the Cells that it touches; and, for every Cell, we know the Objects that touch it.

Definition at line 192 of file PartitionManager.h.

Constructor & Destructor Documentation

◆ CellAndObjectIntersection()

CellAndObjectIntersection::CellAndObjectIntersection ( )

Definition at line 1127 of file PartitionManager.cpp.

◆ ~CellAndObjectIntersection()

CellAndObjectIntersection::~CellAndObjectIntersection ( )

Definition at line 1136 of file PartitionManager.cpp.

Member Function Documentation

◆ addCoverage()

void CellAndObjectIntersection::addCoverage ( PartitionCell * cell,
PartitionData * module )

make 'this' refer to the specified cell and module. Normally, this involves updated the member variables and adding 'this' to the Cell's list of COIs.

Definition at line 1186 of file PartitionManager.cpp.

◆ friend_addToCellList()

void CellAndObjectIntersection::friend_addToCellList ( CellAndObjectIntersection ** pListHead)

Definition at line 1143 of file PartitionManager.cpp.

◆ friend_removeFromCellList()

void CellAndObjectIntersection::friend_removeFromCellList ( CellAndObjectIntersection ** pListHead)

Definition at line 1154 of file PartitionManager.cpp.

◆ getCell()

PartitionCell * CellAndObjectIntersection::getCell ( )
inline

return the Cell for this COI (null if the COI is not in use)

Definition at line 221 of file PartitionManager.h.

◆ getModule()

PartitionData * CellAndObjectIntersection::getModule ( )
inline

return the Module for this COI (null if the COI is not in use)

Definition at line 226 of file PartitionManager.h.

◆ getNextCoi()

CellAndObjectIntersection * CellAndObjectIntersection::getNextCoi ( )
inline

return the next COI in the Cell's list of COIs.

Definition at line 236 of file PartitionManager.h.

◆ getPrevCoi()

CellAndObjectIntersection * CellAndObjectIntersection::getPrevCoi ( )
inline

return the previous COI in the Cell's list of COIs.

Definition at line 231 of file PartitionManager.h.

◆ removeAllCoverage()

void CellAndObjectIntersection::removeAllCoverage ( )

make 'this' refer to nothing at all. this involves resetting the member variables to null, and removing 'this' from the Cell's list of COI's.

Definition at line 1205 of file PartitionManager.cpp.


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