Kstars

staritem.h
1/*
2 SPDX-FileCopyrightText: 2016 Artem Fedoskin <afedoskin3@gmail.com>
3 SPDX-License-Identifier: GPL-2.0-or-later
4*/
5
6#pragma once
7
8#include "skyitem.h"
9
10class SkyMesh;
11class SkyOpacityNode;
13class StarComponent;
14
15/**
16 * @class StarItem
17 *
18 * @short Class that handles Stars
19 * @author Artem Fedoskin
20 * @version 1.0
21 */
22class StarItem : public SkyItem
23{
24 public:
25 /**
26 * @short Constructor.
27 * @param starComp star component
28 * @param rootNode parent RootNode that instantiated this object
29 */
31
32 /**
33 * @short Update positions of nodes that represent stars
34 * In this function we perform almost the same thing as in DeepSkyItem::updateDeepSkyNode() to reduce
35 * memory consumption.
36 * @see DeepSkyItem::updateDeepSkyNode()
37 */
38 virtual void update();
39
40 private:
41 StarComponent *m_starComp { nullptr };
42 SkyMesh *m_skyMesh { nullptr };
43 StarBlockFactory *m_StarBlockFactory { nullptr };
44
45 SkyOpacityNode *m_stars { nullptr };
46 SkyOpacityNode *m_deepStars { nullptr };
47 SkyOpacityNode *m_starLabels { nullptr };
48};
A QSGClipNode derived class used as a container for holding pointers to nodes and for clipping.
Definition rootnode.h:60
This is an interface for implementing SkyItems that represent SkyComponent derived objects on the Sky...
Definition skyitem.h:30
RootNode * rootNode()
Definition skyitem.h:57
Provides an interface to the Hierarchical Triangular Mesh (HTM) library written by A.
Definition skymesh.h:74
A wrapper for QSGOpacityNode that provides hide() and show() functions.
A factory that creates StarBlocks and recycles them in an LRU Cache.
Represents the stars on the sky map.
Class that handles Stars.
Definition staritem.h:23
StarItem(StarComponent *starComp, RootNode *rootNode)
Constructor.
Definition staritem.cpp:23
virtual void update()
Update positions of nodes that represent stars In this function we perform almost the same thing as i...
Definition staritem.cpp:68
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:16:41 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.