source: Packages/nr3d/nr3D.cpp @ 1

Revision 1, 2.4 KB checked in by art, 13 years ago (diff)
Line 
1/***************************************************************************
2 *                                                                         *
3 *   (c) Art Tevs, MPI Informatik Saarbruecken                             *
4 *       mailto: <tevs@mpi-sb.mpg.de>                                      *
5 *                                                                         *
6 *   This program is free software; you can redistribute it and/or modify  *
7 *   it under the terms of the GNU General Public License as published by  *
8 *   the Free Software Foundation; either version 2 of the License, or     *
9 *   (at your option) any later version.                                   *
10 *                                                                         *
11 ***************************************************************************/
12
13#include "nr3D.h"
14
15namespace nrEngine {
16        namespace nr3D{
17
18                SharedPtr<nr3D> nr3D::sSingleton;
19
20                //------------------------------------------------------------------------
21                nr3D* nr3D::instance()
22                {
23                        if (!valid()){
24                                sSingleton.reset(new nr3D());
25                        }
26                        return sSingleton.get();
27                }
28
29                //------------------------------------------------------------------------
30                void nr3D::release()
31                {
32                        if (valid())
33                        {
34                                sSingleton.reset();
35                        }
36                }
37
38                //--------------------------------------------------------------------------
39                bool nr3D::valid()
40                {
41                        return sSingleton != NULL;
42                }
43
44                //----------------------------------------------------------------------
45                nr3D::nr3D()
46                {
47                        // initialize default variables
48                        mName = "nr3D-Package";
49                        mFullName = "3D-Engine package for nrEngine";
50                        NR_Log(Log::LOG_PLUGIN, "%s: %s",mName.c_str(), mFullName.c_str());
51
52                        // check whenever engine is valid
53                        if (!Engine::valid())
54                        {
55                                NR_Log(Log::LOG_PLUGIN, Log::LL_ERROR, "%s: Engine must be initialized before!", mName.c_str());
56                                NR_EXCEPT(ENGINE_ERROR, "Engine must be initialized before creating a nr3D", "nr3D::nr3D()");
57                        }
58
59                        // initialize glfw task
60                }
61
62                //----------------------------------------------------------------------
63                nr3D::~nr3D()
64                {
65               
66                }
67
68                //----------------------------------------------------------------------
69                const std::string& nr3D::getName()
70                {
71                        return mName;
72                }
73
74                //----------------------------------------------------------------------
75                const std::string& nr3D::getFullName()
76                {
77                        return mFullName;
78                }
79        };
80};
Note: See TracBrowser for help on using the repository browser.