Panda3D
config_particlesystem.cxx
Go to the documentation of this file.
1 /**
2  * PANDA 3D SOFTWARE
3  * Copyright (c) Carnegie Mellon University. All rights reserved.
4  *
5  * All use of this software is subject to the terms of the revised BSD
6  * license. You should have received a copy of this license along
7  * with this source code in a file named "LICENSE."
8  *
9  * @file config_particlesystem.cxx
10  * @author charles
11  * @date 2000-07-05
12  */
13 
14 #include "config_particlesystem.h"
15 #include "particleSystem.h"
16 #include "geomParticleRenderer.h"
17 #include "geomNode.h"
18 
19 #if !defined(CPPPARSER) && !defined(LINK_ALL_STATIC) && !defined(BUILDING_PANDA_PARTICLESYSTEM)
20  #error Buildsystem error: BUILDING_PANDA_PARTICLESYSTEM not defined
21 #endif
22 
23 ConfigureDef(config_particlesystem);
24 NotifyCategoryDef(particlesystem, "");
25 
26 ConfigureFn(config_particlesystem) {
27  ColorInterpolationFunction::init_type();
28  ColorInterpolationFunctionConstant::init_type();
29  ColorInterpolationFunctionLinear::init_type();
30  ColorInterpolationFunctionStepwave::init_type();
31  ColorInterpolationFunctionSinusoid::init_type();
32  ParticleSystem::init_type();
33  GeomNode::GeomList::init_type(); // repeated here to ensure instantiated templates get initialized too.
35 }
36 
37 /**
38  * Initializes the library. This must be called at least once before any of
39  * the functions or classes in this library can be used. Normally it will be
40  * called by the static initializers and need not be called explicitly, but
41  * special cases exist.
42  */
43 void
45  static bool initialized = false;
46  if (initialized) {
47  return;
48  }
49  initialized = true;
50 
51  ParticleSystem::init_type();
52 }
void init_libparticlesystem()
Initializes the library.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.