GlobeEngine
geRaster::MBlock Class Reference

#include <MBlock.h>

Inheritance diagram for geRaster::MBlock:
geData::GeometricBalancedArrayTreeNode< TREESIZE, KEYTYPE, HALFTREESIZE > geData::BalancedArrayTreeNode< TREESIZE, KEYTYPE, HALFTREESIZE > geData::ArrayTreeNode< TREESIZE, KEYTYPE, HALFTREESIZE >

Public Types

enum  BlockType {
  BOTTOMLEFT = 0, BOTTOMRIGHT, UPPERLEFT, UPPERRIGHT,
  ROOT, NOTYPE
}
 

Public Member Functions

 MBlock ()
 
 ~MBlock ()
 
void clean ()
 
void create (MBlockQuadtree *_root, std::shared_ptr< geSpatial::CullableSpatialKey > key, double _edgelength, int _parentID)
 
void createChildren ()
 
int locateMBlock (double _x, double _y, double _kPatchEdgeLenght)
 
void requestChildsForMBlock ()
 
void removeChildsForMBlock ()
 
void addKPatch (int _uid)
 
void propateErrorUp ()
 
void restrict ()
 
void searchNeighbourAndSplit (int _uid, BlockType _changeFirst, BlockType _changeSecond, bool _mirror_y_axis)
 
void clearKPatchList ()
 
void locateAndSetTexture (std::shared_ptr< geSpatial::CullableSpatialKey > _key, MBlockQuadtree::MBlockQuadtreeLevel _level, std::shared_ptr< ge::TextureHandle > _tex, float _max_error, float *_errors)
 
int searchNodeAndRemoveTexture (std::shared_ptr< geSpatial::CullableSpatialKey > _key)
 
void setOrthoHandle (GLuint _handle)
 
enum BlockType getBlockType ()
 
void setBlockType (BlockType _type)
 
float getMaxError ()
 
GLuint getHeightTexHandle ()
 
GLuint getOrthoHandle ()
 
void bindTexLayerAtTextureChannel (int _texLayer, int _channelID)
 
void unbindTextureChannel (int _channelID)
 
bool isInWGS84Area () const
 
std::vector< int > const & getKPatches ()
 
void printErrors ()
 
void print (bool _details)
 
void traverseAndMarkNodesInViewFrustum (std::shared_ptr< ge::Camera > const &_cam, bool _markToDelete)
 
GLuint64 getBindlessTextureHandle (int _layerIdx) const
 
void setBindlessTextureHandles ()
 
void makeBindlessTexturesResident ()
 
void makeBindlessTexturesNotResident ()
 
bool hasARemoveRequest () const
 
- Public Member Functions inherited from geData::GeometricBalancedArrayTreeNode< TREESIZE, KEYTYPE, HALFTREESIZE >
 GeometricBalancedArrayTreeNode ()
 
 ~GeometricBalancedArrayTreeNode ()
 
virtual void printValue () const
 
const double * getBounds () const
 
void setBounds (vmml::Vector4d _bound)
 
void setBoundIndex (int _maxTreeDepth)
 
vmml::Vector2d getOrigin () const
 
vmml::Vector2d getMidpoint () const
 
bool inside (vmml::Vector2d _coord) const
 
int locateChildIDForCoordinates (vmml::Vector2d _coord) const
 
double getEdgelenght () const
 
void setEdgelenght (double _edgelength)
 
void setBoundsIndex (GLuint _min_x, GLuint _min_y)
 
const GLuint * getBoundsIndex () const
 
bool isVisible () const
 
void isVisible (bool _input)
 
void print ()
 
- Public Member Functions inherited from geData::BalancedArrayTreeNode< TREESIZE, KEYTYPE, HALFTREESIZE >
 BalancedArrayTreeNode ()
 
 ~BalancedArrayTreeNode ()
 
short getBalance () const
 
void setBalance (short _balance)
 
void print ()
 
- Public Member Functions inherited from geData::ArrayTreeNode< TREESIZE, KEYTYPE, HALFTREESIZE >
 ArrayTreeNode (int _uid=-1, int _parent=-1)
 
 ArrayTreeNode (int _uid, std::shared_ptr< KEYTYPE > _key, int _parent)
 
 ArrayTreeNode (int _uid, short _lod, int _parent)
 
 ~ArrayTreeNode ()
 
void clear ()
 
void setArrayNodeProperties (int _uid, std::shared_ptr< KEYTYPE > _key, int _parent, bool _isParent)
 
void setArrayNodeProperties (int _uid, short _lod, int _parent, bool _isParent)
 
void setArrayNodeProperties (int _uid, int _parent, bool _isParent)
 
void setChildByKey (std::shared_ptr< KEYTYPE > const &_key, int _childid)
 
int locateKeyInChild (std::shared_ptr< KEYTYPE > const &_key)
 
void setLod (short _lod)
 
void setBasic (int _uid, int _parent)
 
std::shared_ptr< KEYTYPE > const & getKey () const
 
void setKey (std::shared_ptr< KEYTYPE > _key)
 
int getUID () const
 
void setUID (int _uid)
 
const int getChildIdx (short _childIdx) const
 
void setChildIdx (short _childIdx, int _idx)
 
void repairChildIdx (int _nodeid)
 
bool isParent () const
 
void isParent (bool _input)
 
void setParentID (int _parent)
 
int getParentID () const
 
const intgetChildren () const
 
void clearChildIndices ()
 
void print ()
 

Additional Inherited Members

- Protected Member Functions inherited from geData::GeometricBalancedArrayTreeNode< TREESIZE, KEYTYPE, HALFTREESIZE >
void calculateMidpoint ()
 
- Protected Attributes inherited from geData::GeometricBalancedArrayTreeNode< TREESIZE, KEYTYPE, HALFTREESIZE >
vmml::Vector4d bounds
 
GLuint boundsIdx [2]
 
vmml::Vector2d midPoint
 
double edgelength
 
bool visible
 
- Protected Attributes inherited from geData::ArrayTreeNode< TREESIZE, KEYTYPE, HALFTREESIZE >
int children [TREESIZE]
 
std::shared_ptr< KEYTYPE > key
 

Member Enumeration Documentation

Enumerator
BOTTOMLEFT 
BOTTOMRIGHT 
UPPERLEFT 
UPPERRIGHT 
ROOT 
NOTYPE 

Constructor & Destructor Documentation

geRaster::MBlock::MBlock ( )
geRaster::MBlock::~MBlock ( )

Member Function Documentation

void geRaster::MBlock::addKPatch ( int  _uid)
void geRaster::MBlock::bindTexLayerAtTextureChannel ( int  _texLayer,
int  _channelID 
)
void geRaster::MBlock::clean ( )
void geRaster::MBlock::clearKPatchList ( )
void geRaster::MBlock::create ( MBlockQuadtree _root,
std::shared_ptr< geSpatial::CullableSpatialKey key,
double  _edgelength,
int  _parentID 
)
void geRaster::MBlock::createChildren ( )
GLuint64 geRaster::MBlock::getBindlessTextureHandle ( int  _layerIdx) const
enum BlockType geRaster::MBlock::getBlockType ( )
inline
GLuint geRaster::MBlock::getHeightTexHandle ( )
std::vector< int > const & geRaster::MBlock::getKPatches ( )
float geRaster::MBlock::getMaxError ( )
GLuint geRaster::MBlock::getOrthoHandle ( )
bool geRaster::MBlock::hasARemoveRequest ( ) const
inline
bool geRaster::MBlock::isInWGS84Area ( ) const
void geRaster::MBlock::locateAndSetTexture ( std::shared_ptr< geSpatial::CullableSpatialKey _key,
MBlockQuadtree::MBlockQuadtreeLevel  _level,
std::shared_ptr< ge::TextureHandle _tex,
float  _max_error,
float *  _errors 
)
int geRaster::MBlock::locateMBlock ( double  _x,
double  _y,
double  _kPatchEdgeLenght 
)
void geRaster::MBlock::makeBindlessTexturesNotResident ( )
void geRaster::MBlock::makeBindlessTexturesResident ( )
void geRaster::MBlock::print ( bool  _details)
inline
void geRaster::MBlock::printErrors ( )
void geRaster::MBlock::propateErrorUp ( )
void geRaster::MBlock::removeChildsForMBlock ( )
void geRaster::MBlock::requestChildsForMBlock ( )
void geRaster::MBlock::restrict ( )
void geRaster::MBlock::searchNeighbourAndSplit ( int  _uid,
BlockType  _changeFirst,
BlockType  _changeSecond,
bool  _mirror_y_axis 
)
int geRaster::MBlock::searchNodeAndRemoveTexture ( std::shared_ptr< geSpatial::CullableSpatialKey _key)
void geRaster::MBlock::setBindlessTextureHandles ( )
void geRaster::MBlock::setBlockType ( BlockType  _type)
void geRaster::MBlock::setOrthoHandle ( GLuint  _handle)
void geRaster::MBlock::traverseAndMarkNodesInViewFrustum ( std::shared_ptr< ge::Camera > const &  _cam,
bool  _markToDelete 
)
void geRaster::MBlock::unbindTextureChannel ( int  _channelID)

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