VTK
|
Stores data for a patch of the globe. More...
#include <vtkGeoTreeNode.h>
Public Types | |
enum | NodeStatus { NONE, PROCESSING } |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual vtkTypeBool | IsA (const char *type) |
Return 1 if this class is the same type of (or a subclass of) the named class. More... | |
vtkGeoTreeNode * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) override |
Methods invoked by print to print information about the object including superclasses. More... | |
void | SetChild (vtkGeoTreeNode *node, int idx) |
Get a child of this node. More... | |
void | SetParent (vtkGeoTreeNode *node) |
When we merge children to a lower resolution parent, we need this reference. More... | |
void | SetOlder (vtkGeoTreeNode *node) |
Manage links to older and newer tree nodes. More... | |
vtkGeoTreeNode * | GetOlder () |
void | SetNewer (vtkGeoTreeNode *node) |
vtkGeoTreeNode * | GetNewer () |
virtual bool | HasData () |
Returns whether this node has valid data associated with it, or if it is an "empty" node. More... | |
virtual void | DeleteData () |
Deletes the data associated with the node to make this an "empty" node. More... | |
int | GetWhichChildAreYou () |
Get this nodes child index in node's parent. More... | |
bool | IsDescendantOf (vtkGeoTreeNode *elder) |
This method returns true if this node descends from the elder node. More... | |
int | CreateChildren () |
Create children of the same type as parent. More... | |
vtkGeoTreeNode * | GetChildTreeNode (int idx) |
Get the child as a vtkGeoTreeNode. More... | |
vtkGeoTreeNode * | GetParentTreeNode () |
Get the parent as a vtkGeoTreeNode. More... | |
NodeStatus | GetStatus () |
void | SetStatus (NodeStatus status) |
virtual void | SetId (unsigned long) |
The id uniquely specified this node. More... | |
virtual unsigned long | GetId () |
The id uniquely specified this node. More... | |
virtual void | SetLevel (int) |
Knowing the level simplifies encoding the branch trace in the Id. More... | |
virtual int | GetLevel () |
Knowing the level simplifies encoding the branch trace in the Id. More... | |
virtual void | SetLongitudeRange (double, double) |
Longitude and latitude range of the terrain model. More... | |
void | SetLongitudeRange (double[2]) |
Longitude and latitude range of the terrain model. More... | |
virtual double * | GetLongitudeRange () |
Longitude and latitude range of the terrain model. More... | |
virtual void | GetLongitudeRange (double &, double &) |
Longitude and latitude range of the terrain model. More... | |
virtual void | GetLongitudeRange (double[2]) |
Longitude and latitude range of the terrain model. More... | |
virtual void | SetLatitudeRange (double, double) |
Longitude and latitude range of the terrain model. More... | |
void | SetLatitudeRange (double[2]) |
Longitude and latitude range of the terrain model. More... | |
virtual double * | GetLatitudeRange () |
Longitude and latitude range of the terrain model. More... | |
virtual void | GetLatitudeRange (double &, double &) |
Longitude and latitude range of the terrain model. More... | |
virtual void | GetLatitudeRange (double[2]) |
Longitude and latitude range of the terrain model. More... | |
virtual void | ShallowCopy (vtkGeoTreeNode *src) |
Shallow and Deep copy. More... | |
virtual void | DeepCopy (vtkGeoTreeNode *src) |
Shallow and Deep copy. More... | |
Public Member Functions inherited from vtkObject | |
vtkBaseTypeMacro (vtkObject, vtkObjectBase) | |
virtual void | DebugOn () |
Turn debugging output on. More... | |
virtual void | DebugOff () |
Turn debugging output off. More... | |
bool | GetDebug () |
Get the value of the debug flag. More... | |
void | SetDebug (bool debugFlag) |
Set the value of the debug flag. More... | |
virtual void | Modified () |
Update the modification time for this object. More... | |
virtual vtkMTimeType | GetMTime () |
Return this object's modified time. More... | |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
vtkTypeBool | HasObserver (unsigned long event) |
vtkTypeBool | HasObserver (const char *event) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkCommand * | GetCommand (unsigned long tag) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObserver (vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObservers (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObservers (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkTypeBool | HasObserver (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkTypeBool | HasObserver (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Allow user to set the AbortFlagOn() with the return value of the callback method. More... | |
int | InvokeEvent (unsigned long event, void *callData) |
This method invokes an event and return whether the event was aborted or not. More... | |
int | InvokeEvent (const char *event, void *callData) |
This method invokes an event and return whether the event was aborted or not. More... | |
Public Member Functions inherited from vtkObjectBase | |
const char * | GetClassName () const |
Return the class name as a string. More... | |
virtual void | Delete () |
Delete a VTK object. More... | |
virtual void | FastDelete () |
Delete a reference to this object. More... | |
void | InitializeObjectBase () |
void | Print (ostream &os) |
Print an object to an ostream. More... | |
virtual void | Register (vtkObjectBase *o) |
Increase the reference count (mark as used by another object). More... | |
virtual void | UnRegister (vtkObjectBase *o) |
Decrease the reference count (release by another object). More... | |
int | GetReferenceCount () |
Return the current reference count of this object. More... | |
void | SetReferenceCount (int) |
Sets the reference count. More... | |
void | PrintRevisions (ostream &) |
Legacy. More... | |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. More... | |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. More... | |
Static Public Member Functions | |
static vtkGeoTreeNode * | New () |
static vtkTypeBool | IsTypeOf (const char *type) |
static vtkGeoTreeNode * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkObject | |
static vtkObject * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More... | |
static void | BreakOnError () |
This method is called when vtkErrorMacro executes. More... | |
static void | SetGlobalWarningDisplay (int val) |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static void | GlobalWarningDisplayOn () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static void | GlobalWarningDisplayOff () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static int | GetGlobalWarningDisplay () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
Static Public Member Functions inherited from vtkObjectBase | |
static vtkTypeBool | IsTypeOf (const char *name) |
Return 1 if this class type is the same type of (or a subclass of) the named class. More... | |
static vtkObjectBase * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More... | |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkGeoTreeNode () | |
~vtkGeoTreeNode () override | |
Protected Member Functions inherited from vtkObject | |
vtkObject () | |
~vtkObject () override | |
void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr) |
These methods allow a command to exclusively grab all events. More... | |
void | InternalReleaseFocus () |
These methods allow a command to exclusively grab all events. More... | |
Protected Member Functions inherited from vtkObjectBase | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
int | Level |
unsigned long | Id |
double | LongitudeRange [2] |
double | LatitudeRange [2] |
vtkSmartPointer< vtkGeoTreeNode > | Children [4] |
vtkGeoTreeNode * | Parent |
NodeStatus | Status |
vtkGeoTreeNode * | Older |
vtkGeoTreeNode * | Newer |
Protected Attributes inherited from vtkObject | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
vtkAtomicInt32 | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
Stores data for a patch of the globe.
A self-referential data structure for storing geometry or imagery for the geospatial views. The data is organized in a quadtree. Each node contains a pointer to its parent and owns references to its four child nodes. The ID of each node is unique in its level, and encodes the path from the root node in its bits.
Definition at line 47 of file vtkGeoTreeNode.h.
typedef vtkObject vtkGeoTreeNode::Superclass |
Definition at line 51 of file vtkGeoTreeNode.h.
Enumerator | |
---|---|
NONE | |
PROCESSING |
Definition at line 159 of file vtkGeoTreeNode.h.
|
protected |
|
overrideprotected |
|
static |
|
static |
|
virtual |
Return 1 if this class is the same type of (or a subclass of) the named class.
Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObjectBase.
Reimplemented in vtkGeoImageNode, and vtkGeoTerrainNode.
|
static |
|
protectedvirtual |
Reimplemented in vtkGeoImageNode, and vtkGeoTerrainNode.
vtkGeoTreeNode* vtkGeoTreeNode::NewInstance | ( | ) | const |
|
overridevirtual |
|
virtual |
The id uniquely specified this node.
For this implementation I am going to store the branch path in the bits.
|
virtual |
The id uniquely specified this node.
For this implementation I am going to store the branch path in the bits.
|
virtual |
Knowing the level simplifies encoding the branch trace in the Id.
|
virtual |
Knowing the level simplifies encoding the branch trace in the Id.
Longitude and latitude range of the terrain model.
void vtkGeoTreeNode::SetLongitudeRange | ( | double | [2] | ) |
Longitude and latitude range of the terrain model.
|
virtual |
Longitude and latitude range of the terrain model.
Longitude and latitude range of the terrain model.
|
virtual |
Longitude and latitude range of the terrain model.
Longitude and latitude range of the terrain model.
void vtkGeoTreeNode::SetLatitudeRange | ( | double | [2] | ) |
Longitude and latitude range of the terrain model.
|
virtual |
Longitude and latitude range of the terrain model.
Longitude and latitude range of the terrain model.
|
virtual |
Longitude and latitude range of the terrain model.
void vtkGeoTreeNode::SetChild | ( | vtkGeoTreeNode * | node, |
int | idx | ||
) |
Get a child of this node.
If one is set, then they all should set. No not mix subclasses.
|
inline |
When we merge children to a lower resolution parent, we need this reference.
It is not referenced counted to avoid reference loops. A child should never exist when the parent is destructed anyway.
Definition at line 93 of file vtkGeoTreeNode.h.
|
inline |
Manage links to older and newer tree nodes.
These are used to periodically delete unused patches.
Definition at line 100 of file vtkGeoTreeNode.h.
|
inline |
Definition at line 102 of file vtkGeoTreeNode.h.
|
inline |
Definition at line 104 of file vtkGeoTreeNode.h.
|
inline |
Definition at line 106 of file vtkGeoTreeNode.h.
|
inlinevirtual |
Returns whether this node has valid data associated with it, or if it is an "empty" node.
Reimplemented in vtkGeoTerrainNode, and vtkGeoImageNode.
Definition at line 113 of file vtkGeoTreeNode.h.
|
inlinevirtual |
Deletes the data associated with the node to make this an "empty" node.
This is performed when the node has been unused for a certain amount of time.
Reimplemented in vtkGeoTerrainNode, and vtkGeoImageNode.
Definition at line 121 of file vtkGeoTreeNode.h.
int vtkGeoTreeNode::GetWhichChildAreYou | ( | ) |
Get this nodes child index in node's parent.
bool vtkGeoTreeNode::IsDescendantOf | ( | vtkGeoTreeNode * | elder | ) |
This method returns true if this node descends from the elder node.
The decision is made from the node ids, so the nodes do not have to be in the same tree!
int vtkGeoTreeNode::CreateChildren | ( | ) |
Create children of the same type as parent.
Id, level and Latitude-Longitude ranges are set. Returns VTK_ERROR if level gets too deep to create children.
|
inline |
Get the child as a vtkGeoTreeNode.
Subclasses also implement GetChild() which returns the child as the appropriate subclass type.
Definition at line 148 of file vtkGeoTreeNode.h.
|
inline |
Get the parent as a vtkGeoTreeNode.
Subclasses also implement GetParent() which returns the parent as the appropriate subclass type.
Definition at line 156 of file vtkGeoTreeNode.h.
NodeStatus vtkGeoTreeNode::GetStatus | ( | ) |
void vtkGeoTreeNode::SetStatus | ( | NodeStatus | status | ) |
|
virtual |
Shallow and Deep copy.
Deep copy performs a shallow copy of the Child nodes.
Reimplemented in vtkGeoTerrainNode, and vtkGeoImageNode.
|
virtual |
Shallow and Deep copy.
Deep copy performs a shallow copy of the Child nodes.
Reimplemented in vtkGeoTerrainNode, and vtkGeoImageNode.
|
protected |
Definition at line 181 of file vtkGeoTreeNode.h.
|
protected |
Definition at line 182 of file vtkGeoTreeNode.h.
|
protected |
Definition at line 184 of file vtkGeoTreeNode.h.
|
protected |
Definition at line 185 of file vtkGeoTreeNode.h.
|
protected |
Definition at line 187 of file vtkGeoTreeNode.h.
|
protected |
Definition at line 188 of file vtkGeoTreeNode.h.
|
protected |
Definition at line 189 of file vtkGeoTreeNode.h.
|
protected |
Definition at line 190 of file vtkGeoTreeNode.h.
|
protected |
Definition at line 191 of file vtkGeoTreeNode.h.