Panda3D
|
00001 // Filename: config_ode.cxx 00002 // Created by: joswilso (27Dec06) 00003 // 00004 //////////////////////////////////////////////////////////////////// 00005 // 00006 // PANDA 3D SOFTWARE 00007 // Copyright (c) Carnegie Mellon University. All rights reserved. 00008 // 00009 // All use of this software is subject to the terms of the revised BSD 00010 // license. You should have received a copy of this license along 00011 // with this source code in a file named "LICENSE." 00012 // 00013 //////////////////////////////////////////////////////////////////// 00014 00015 #include "config_ode.h" 00016 #include "odeWorld.h" 00017 #include "odeMass.h" 00018 #include "odeBody.h" 00019 #include "odeJointGroup.h" 00020 #include "odeJoint.h" 00021 #include "odeSpace.h" 00022 #include "odeGeom.h" 00023 #include "odeSurfaceParameters.h" 00024 #include "odeContactGeom.h" 00025 #include "odeContact.h" 00026 #include "odeAMotorJoint.h" 00027 #include "odeBallJoint.h" 00028 #include "odeContactJoint.h" 00029 #include "odeFixedJoint.h" 00030 #include "odeHingeJoint.h" 00031 #include "odeHinge2Joint.h" 00032 #include "odeLMotorJoint.h" 00033 #include "odeNullJoint.h" 00034 #include "odePlane2dJoint.h" 00035 #include "odeSliderJoint.h" 00036 #include "odeUniversalJoint.h" 00037 #include "odeSimpleSpace.h" 00038 #include "odeHashSpace.h" 00039 #include "odeQuadTreeSpace.h" 00040 #include "odeSphereGeom.h" 00041 #include "odeBoxGeom.h" 00042 #include "odePlaneGeom.h" 00043 #include "odeCappedCylinderGeom.h" 00044 #include "odeCylinderGeom.h" 00045 #include "odeRayGeom.h" 00046 #include "odeTriMeshData.h" 00047 #include "odeTriMeshGeom.h" 00048 #include "odeCollisionEntry.h" 00049 #include "dconfig.h" 00050 00051 Configure(config_ode); 00052 NotifyCategoryDef(ode, ""); 00053 NotifyCategoryDef(odeworld, "ode"); 00054 NotifyCategoryDef(odebody, "ode"); 00055 NotifyCategoryDef(odejoint, "ode"); 00056 NotifyCategoryDef(odespace, "ode"); 00057 NotifyCategoryDef(odegeom, "ode"); 00058 NotifyCategoryDef(odetrimeshdata, "ode"); 00059 00060 ConfigureFn(config_ode) { 00061 init_libode(); 00062 } 00063 00064 //////////////////////////////////////////////////////////////////// 00065 // Function: init_libode 00066 // Description: Initializes the library. This must be called at 00067 // least once before any of the functions or classes in 00068 // this library can be used. Normally it will be 00069 // called by the static initializers and need not be 00070 // called explicitly, but special cases exist. 00071 //////////////////////////////////////////////////////////////////// 00072 void 00073 init_libode() { 00074 static bool initialized = false; 00075 if (initialized) { 00076 return; 00077 } 00078 initialized = true; 00079 00080 dInitODE(); 00081 00082 OdeWorld::init_type(); 00083 OdeMass::init_type(); 00084 OdeBody::init_type(); 00085 OdeJointGroup::init_type(); 00086 OdeJoint::init_type(); 00087 OdeSpace::init_type(); 00088 OdeGeom::init_type(); 00089 OdeSurfaceParameters::init_type(); 00090 OdeContactGeom::init_type(); 00091 OdeContact::init_type(); 00092 OdeAMotorJoint::init_type(); 00093 OdeBallJoint::init_type(); 00094 OdeContactJoint::init_type(); 00095 OdeFixedJoint::init_type(); 00096 OdeHingeJoint::init_type(); 00097 OdeHinge2Joint::init_type(); 00098 OdeLMotorJoint::init_type(); 00099 OdeNullJoint::init_type(); 00100 OdePlane2dJoint::init_type(); 00101 OdeSliderJoint::init_type(); 00102 OdeUniversalJoint::init_type(); 00103 OdeSimpleSpace::init_type(); 00104 OdeHashSpace::init_type(); 00105 OdeQuadTreeSpace::init_type(); 00106 OdeSphereGeom::init_type(); 00107 OdeBoxGeom::init_type(); 00108 OdePlaneGeom::init_type(); 00109 OdeCappedCylinderGeom::init_type(); 00110 OdeCylinderGeom::init_type(); 00111 OdeRayGeom::init_type(); 00112 OdeTriMeshData::init_type(); 00113 OdeTriMeshGeom::init_type(); 00114 OdeCollisionEntry::init_type(); 00115 }