Stellarium 0.12.4
Main Page
Namespaces
Classes
Coding Style
Scripting
Plugins
Renderer
File Structure
File List
File Members
core
StelObjectType.hpp
Go to the documentation of this file.
1
/*
2
* Stellarium
3
* Copyright (C) 2007 Fabien Chereau
4
*
5
* This program is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU General Public License
7
* as published by the Free Software Foundation; either version 2
8
* of the License, or (at your option) any later version.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA.
18
*/
19
20
#ifndef _STELOBJECTTYPE_HPP_
21
#define _STELOBJECTTYPE_HPP_
22
23
#include <QSharedPointer>
24
27
template
<
class
T>
class
QSharedPointerNoDelete
:
public
QSharedPointer<T>
28
{
29
public
:
30
QSharedPointerNoDelete
() {;}
31
QSharedPointerNoDelete
(T *ptr) : QSharedPointer<T>(ptr, QSharedPointerNoDelete::noDelete) {;}
32
QSharedPointerNoDelete
(T *ptr,
bool
own) : QSharedPointer<T>(ptr) {Q_UNUSED(own); Q_ASSERT(own==
true
);}
33
QSharedPointerNoDelete
(
const
QSharedPointer<T>& ptr) : QSharedPointer<T>(ptr) {;}
34
static
void
noDelete(T *ptr) {Q_UNUSED(ptr);}
35
};
36
39
40
class
StelObject
;
41
44
typedef
QSharedPointerNoDelete<StelObject>
StelObjectP
;
45
46
#endif // _STELOBJECTTYPE_HPP_
Generated on Wed Sep 25 2013 22:30:30 for Stellarium by
1.8.3.1