00001 // Filename: config_interval.cxx 00002 // Created by: drose (27Aug02) 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_interval.h" 00016 #include "cInterval.h" 00017 #include "cConstraintInterval.h" 00018 #include "cConstrainTransformInterval.h" 00019 #include "cConstrainPosInterval.h" 00020 #include "cConstrainHprInterval.h" 00021 #include "cConstrainPosHprInterval.h" 00022 #include "cLerpInterval.h" 00023 #include "cLerpNodePathInterval.h" 00024 #include "cLerpAnimEffectInterval.h" 00025 #include "cMetaInterval.h" 00026 #include "showInterval.h" 00027 #include "hideInterval.h" 00028 #include "waitInterval.h" 00029 #include "lerpblend.h" 00030 00031 #include "dconfig.h" 00032 00033 Configure(config_interval); 00034 NotifyCategoryDef(interval, ""); 00035 00036 ConfigureFn(config_interval) { 00037 init_libinterval(); 00038 } 00039 00040 ConfigVariableDouble interval_precision 00041 ("interval-precision", 1000.0, 00042 PRC_DESC("Set this to the default value for set_precision() for each " 00043 "CMetaInterval created.")); 00044 00045 ConfigVariableBool verify_intervals 00046 ("verify-intervals", false, 00047 PRC_DESC("Set this true to generate an assertion failure if interval " 00048 "functions are called out-of-order.")); 00049 00050 00051 //////////////////////////////////////////////////////////////////// 00052 // Function: init_libinterval 00053 // Description: Initializes the library. This must be called at 00054 // least once before any of the functions or classes in 00055 // this library can be used. Normally it will be 00056 // called by the static initializers and need not be 00057 // called explicitly, but special cases exist. 00058 //////////////////////////////////////////////////////////////////// 00059 void 00060 init_libinterval() { 00061 static bool initialized = false; 00062 if (initialized) { 00063 return; 00064 } 00065 initialized = true; 00066 00067 CInterval::init_type(); 00068 CConstraintInterval::init_type(); 00069 CConstrainTransformInterval::init_type(); 00070 CConstrainPosInterval::init_type(); 00071 CConstrainHprInterval::init_type(); 00072 CConstrainPosHprInterval::init_type(); 00073 CLerpInterval::init_type(); 00074 CLerpNodePathInterval::init_type(); 00075 CLerpAnimEffectInterval::init_type(); 00076 CMetaInterval::init_type(); 00077 ShowInterval::init_type(); 00078 HideInterval::init_type(); 00079 WaitInterval::init_type(); 00080 LerpBlendType::init_type(); 00081 EaseInBlendType::init_type(); 00082 EaseOutBlendType::init_type(); 00083 EaseInOutBlendType::init_type(); 00084 NoBlendType::init_type(); 00085 } 00086