Voxel scene manager. More...
#include <VolumeChangeTracker.h>
Public Member Functions | |
VolumeChangeTracker (LargeVolume< VoxelType > *volumeDataToSet, uint16_t regionSideLength) | |
~VolumeChangeTracker () | |
int32_t | getCurrentTime (void) const |
int32_t | getLastModifiedTimeForRegion (uint16_t uX, uint16_t uY, uint16_t uZ) |
LargeVolume< VoxelType > * | getWrappedVolume (void) const |
void | setAllRegionsModified (void) |
void | setLockedVoxelAt (uint16_t x, uint16_t y, uint16_t z, VoxelType value) |
void | setVoxelAt (uint16_t x, uint16_t y, uint16_t z, VoxelType value) |
void | lockRegion (const Region ®ToLock) |
void | unlockRegion (void) |
void | incrementCurrentTime (void) |
Public Attributes | |
bool | m_bIsLocked |
Region | m_regLastLocked |
LargeVolume< VoxelType > * | volumeData |
uint16_t | m_uRegionSideLength |
uint8_t | m_uRegionSideLengthPower |
uint16_t | m_uVolumeWidthInRegions |
uint16_t | m_uVolumeHeightInRegions |
uint16_t | m_uVolumeDepthInRegions |
LargeVolume< int32_t > * | volRegionLastModified |
Static Public Attributes | |
static uint32_t | m_uCurrentTime = 0 |
Voxel scene manager.
Definition at line 37 of file VolumeChangeTracker.h.
PolyVox::VolumeChangeTracker< VoxelType >::VolumeChangeTracker | ( | LargeVolume< VoxelType > * | volumeDataToSet, | |
uint16_t | regionSideLength | |||
) |
Definition at line 33 of file VolumeChangeTracker.inl.
PolyVox::VolumeChangeTracker< VoxelType >::~VolumeChangeTracker | ( | ) |
Definition at line 48 of file VolumeChangeTracker.inl.
int32_t PolyVox::VolumeChangeTracker< VoxelType >::getCurrentTime | ( | void | ) | const |
Definition at line 69 of file VolumeChangeTracker.inl.
int32_t PolyVox::VolumeChangeTracker< VoxelType >::getLastModifiedTimeForRegion | ( | uint16_t | uX, | |
uint16_t | uY, | |||
uint16_t | uZ | |||
) |
LargeVolume< VoxelType > * PolyVox::VolumeChangeTracker< VoxelType >::getWrappedVolume | ( | void | ) | const |
Definition at line 81 of file VolumeChangeTracker.inl.
void PolyVox::VolumeChangeTracker< VoxelType >::incrementCurrentTime | ( | void | ) |
Definition at line 199 of file VolumeChangeTracker.inl.
Referenced by PolyVox::VolumeChangeTracker< VoxelType >::setAllRegionsModified(), PolyVox::VolumeChangeTracker< VoxelType >::setVoxelAt(), and PolyVox::VolumeChangeTracker< VoxelType >::unlockRegion().
void PolyVox::VolumeChangeTracker< VoxelType >::lockRegion | ( | const Region & | regToLock | ) |
Definition at line 149 of file VolumeChangeTracker.inl.
void PolyVox::VolumeChangeTracker< VoxelType >::setAllRegionsModified | ( | void | ) |
void PolyVox::VolumeChangeTracker< VoxelType >::setLockedVoxelAt | ( | uint16_t | x, | |
uint16_t | y, | |||
uint16_t | z, | |||
VoxelType | value | |||
) |
Definition at line 137 of file VolumeChangeTracker.inl.
void PolyVox::VolumeChangeTracker< VoxelType >::setVoxelAt | ( | uint16_t | x, | |
uint16_t | y, | |||
uint16_t | z, | |||
VoxelType | value | |||
) |
void PolyVox::VolumeChangeTracker< VoxelType >::unlockRegion | ( | void | ) |
bool PolyVox::VolumeChangeTracker< VoxelType >::m_bIsLocked |
Definition at line 61 of file VolumeChangeTracker.h.
Referenced by PolyVox::VolumeChangeTracker< VoxelType >::lockRegion(), PolyVox::VolumeChangeTracker< VoxelType >::setLockedVoxelAt(), and PolyVox::VolumeChangeTracker< VoxelType >::unlockRegion().
Region PolyVox::VolumeChangeTracker< VoxelType >::m_regLastLocked |
Definition at line 62 of file VolumeChangeTracker.h.
Referenced by PolyVox::VolumeChangeTracker< VoxelType >::lockRegion(), and PolyVox::VolumeChangeTracker< VoxelType >::unlockRegion().
uint32_t PolyVox::VolumeChangeTracker< VoxelType >::m_uCurrentTime = 0 [static] |
Definition at line 76 of file VolumeChangeTracker.h.
Referenced by PolyVox::VolumeChangeTracker< VoxelType >::getCurrentTime(), PolyVox::VolumeChangeTracker< VoxelType >::incrementCurrentTime(), PolyVox::VolumeChangeTracker< VoxelType >::setAllRegionsModified(), PolyVox::VolumeChangeTracker< VoxelType >::setVoxelAt(), and PolyVox::VolumeChangeTracker< VoxelType >::unlockRegion().
uint16_t PolyVox::VolumeChangeTracker< VoxelType >::m_uRegionSideLength |
Definition at line 65 of file VolumeChangeTracker.h.
Referenced by PolyVox::VolumeChangeTracker< VoxelType >::setVoxelAt(), and PolyVox::VolumeChangeTracker< VoxelType >::VolumeChangeTracker().
uint8_t PolyVox::VolumeChangeTracker< VoxelType >::m_uRegionSideLengthPower |
Definition at line 66 of file VolumeChangeTracker.h.
Referenced by PolyVox::VolumeChangeTracker< VoxelType >::setVoxelAt(), PolyVox::VolumeChangeTracker< VoxelType >::unlockRegion(), and PolyVox::VolumeChangeTracker< VoxelType >::VolumeChangeTracker().
uint16_t PolyVox::VolumeChangeTracker< VoxelType >::m_uVolumeDepthInRegions |
Definition at line 69 of file VolumeChangeTracker.h.
Referenced by PolyVox::VolumeChangeTracker< VoxelType >::setAllRegionsModified(), PolyVox::VolumeChangeTracker< VoxelType >::setVoxelAt(), and PolyVox::VolumeChangeTracker< VoxelType >::VolumeChangeTracker().
uint16_t PolyVox::VolumeChangeTracker< VoxelType >::m_uVolumeHeightInRegions |
Definition at line 68 of file VolumeChangeTracker.h.
Referenced by PolyVox::VolumeChangeTracker< VoxelType >::setAllRegionsModified(), PolyVox::VolumeChangeTracker< VoxelType >::setVoxelAt(), and PolyVox::VolumeChangeTracker< VoxelType >::VolumeChangeTracker().
uint16_t PolyVox::VolumeChangeTracker< VoxelType >::m_uVolumeWidthInRegions |
Definition at line 67 of file VolumeChangeTracker.h.
Referenced by PolyVox::VolumeChangeTracker< VoxelType >::setAllRegionsModified(), PolyVox::VolumeChangeTracker< VoxelType >::setVoxelAt(), and PolyVox::VolumeChangeTracker< VoxelType >::VolumeChangeTracker().
LargeVolume<int32_t>* PolyVox::VolumeChangeTracker< VoxelType >::volRegionLastModified |
Definition at line 74 of file VolumeChangeTracker.h.
Referenced by PolyVox::VolumeChangeTracker< VoxelType >::getLastModifiedTimeForRegion(), PolyVox::VolumeChangeTracker< VoxelType >::setAllRegionsModified(), PolyVox::VolumeChangeTracker< VoxelType >::setVoxelAt(), PolyVox::VolumeChangeTracker< VoxelType >::unlockRegion(), and PolyVox::VolumeChangeTracker< VoxelType >::VolumeChangeTracker().
LargeVolume<VoxelType>* PolyVox::VolumeChangeTracker< VoxelType >::volumeData |
Definition at line 63 of file VolumeChangeTracker.h.
Referenced by PolyVox::VolumeChangeTracker< VoxelType >::getWrappedVolume(), PolyVox::VolumeChangeTracker< VoxelType >::setLockedVoxelAt(), PolyVox::VolumeChangeTracker< VoxelType >::setVoxelAt(), and PolyVox::VolumeChangeTracker< VoxelType >::VolumeChangeTracker().