RootNode

Search for usage in LXR

RootNode Class Reference

#include <rootnode.h>

Inheritance diagram for RootNode:

Public Member Functions

CometsItemcometsItem ()
 
void genCachedTextures ()
 
QSGTexturegetCachedTexture (int size, char spType)
 
LabelsItemlabelsItem ()
 
StarItemstarItem ()
 
TelescopeSymbolsItemtelescopeSymbolsItem ()
 
void testLeakAdd ()
 
void testLeakDelete ()
 
void update (bool clearTextures=false)
 
void updateClipPoly ()
 
- Public Member Functions inherited from QSGClipNode
QRectF clipRect () const const
 
bool isRectangular () const const
 
void setClipRect (const QRectF &rect)
 
void setIsRectangular (bool rectHint)
 
- Public Member Functions inherited from QSGBasicGeometryNode
QSGGeometrygeometry ()
 
const QSGGeometrygeometry () const const
 
void setGeometry (QSGGeometry *geometry)
 
- Public Member Functions inherited from QSGNode
void appendChildNode (QSGNode *node)
 
QSGNodechildAtIndex (int i) const const
 
int childCount () const const
 
QSGNodefirstChild () const const
 
QSGNode::Flags flags () const const
 
void insertChildNodeAfter (QSGNode *node, QSGNode *after)
 
void insertChildNodeBefore (QSGNode *node, QSGNode *before)
 
virtual bool isSubtreeBlocked () const const
 
QSGNodelastChild () const const
 
void markDirty (QSGNode::DirtyState bits)
 
QSGNodenextSibling () const const
 
QSGNodeparent () const const
 
void prependChildNode (QSGNode *node)
 
virtual void preprocess ()
 
QSGNodepreviousSibling () const const
 
void removeAllChildNodes ()
 
void removeChildNode (QSGNode *node)
 
void setFlag (QSGNode::Flag f, bool enabled)
 
void setFlags (QSGNode::Flags f, bool enabled)
 
QSGNode::NodeType type () const const
 

Additional Inherited Members

- Public Types inherited from QSGNode
enum  DirtyStateBit
 
enum  Flag
 
enum  NodeType
 
- Public Attributes inherited from QSGNode
 BasicNodeType
 
 ClipNodeType
 
 DirtyForceUpdate
 
 DirtyGeometry
 
 DirtyMaterial
 
 DirtyMatrix
 
 DirtyNodeAdded
 
 DirtyNodeRemoved
 
 DirtyOpacity
 
 DirtyPropagationMask
 
typedef DirtyState
 
 DirtySubtreeBlocked
 
 DirtyUsePreprocess
 
typedef Flags
 
 GeometryNodeType
 
 InternalReserved
 
 IsVisitableNode
 
 OpacityNodeType
 
 OwnedByParent
 
 OwnsGeometry
 
 OwnsMaterial
 
 OwnsOpaqueMaterial
 
 RenderNodeType
 
 RootNodeType
 
 TransformNodeType
 
 UsePreprocess
 

Detailed Description

A container for nodes that holds collection of textures for stars and provides clipping.

A QSGClipNode derived class used as a container for holding pointers to nodes and for clipping. Upon construction RootNode generates all textures that are used by PointNode.

KStars Lite has the following hierarchy:

  1. RootNode - the parent of all nodes that also acts as a clipping node
  2. SkyItem derived nodes that acts like SkyComponent in regular KStars
  3. SkyNode derived nodes that represent SkyObjects (similar to SkyComponent::draw())
  4. Simple nodes like EllipseNode or PointNode that draw basic geometry and stars
Author
Artem Fedoskin
Version
1.0

Definition at line 59 of file rootnode.h.

Member Function Documentation

◆ genCachedTextures()

void RootNode::genCachedTextures ( )

initializes textureCache with cached images of stars from SkyMapLite

Definition at line 165 of file rootnode.cpp.

◆ getCachedTexture()

QSGTexture * RootNode::getCachedTexture ( int  size,
char  spType 
)

returns cached texture from textureCache

Parameters
sizesize of the star
spTypespectral class
Returns
cached QSGTexture from textureCache

Definition at line 185 of file rootnode.cpp.

◆ testLeakDelete()

void RootNode::testLeakDelete ( )

Debug functions.

Definition at line 127 of file rootnode.cpp.

◆ update()

void RootNode::update ( bool  clearTextures = false)

update positions of all child SkyItems

Parameters
clearTexturestrue if textures for PointNodes should recreated (required when color scheme is changed)

Definition at line 216 of file rootnode.cpp.

◆ updateClipPoly()

void RootNode::updateClipPoly ( )

triangulates and sets new clipping polygon provided by Projection system

Definition at line 190 of file rootnode.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Thu Aug 18 2022 03:56:48 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.