00001 /*---------------------------------------------------------------------------*\ 00002 * OpenSG * 00003 * * 00004 * * 00005 * Copyright (C) 2000-2002 by the OpenSG Forum * 00006 * * 00007 * www.opensg.org * 00008 * * 00009 * contact: dirk@opensg.org, gerrit.voss@vossg.org, jbehr@zgdv.de * 00010 * * 00011 \*---------------------------------------------------------------------------*/ 00012 /*---------------------------------------------------------------------------*\ 00013 * License * 00014 * * 00015 * This library is free software; you can redistribute it and/or modify it * 00016 * under the terms of the GNU Library General Public License as published * 00017 * by the Free Software Foundation, version 2. * 00018 * * 00019 * This library is distributed in the hope that it will be useful, but * 00020 * WITHOUT ANY WARRANTY; without even the implied warranty of * 00021 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 00022 * Library General Public License for more details. * 00023 * * 00024 * You should have received a copy of the GNU Library General Public * 00025 * License along with this library; if not, write to the Free Software * 00026 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * 00027 * * 00028 \*---------------------------------------------------------------------------*/ 00029 /*---------------------------------------------------------------------------*\ 00030 * Changes * 00031 * * 00032 * * 00033 * * 00034 * * 00035 * * 00036 * * 00037 \*---------------------------------------------------------------------------*/ 00038 00039 //--------------------------------------------------------------------------- 00040 // Includes 00041 //--------------------------------------------------------------------------- 00042 00043 #include <stdlib.h> 00044 #include <stdio.h> 00045 00046 #include <OSGConfig.h> 00047 00048 00049 OSG_BEGIN_NAMESPACE 00050 00051 00052 /***************************************************************************\ 00053 * Types * 00054 \***************************************************************************/ 00055 00056 /***************************************************************************\ 00057 * Class variables * 00058 \***************************************************************************/ 00059 00060 /***************************************************************************\ 00061 * Class methods * 00062 \***************************************************************************/ 00063 00064 00065 00066 /*-------------------------------------------------------------------------*\ 00067 - public - 00068 \*-------------------------------------------------------------------------*/ 00069 00070 /*-------------------------------------------------------------------------*\ 00071 - protected - 00072 \*-------------------------------------------------------------------------*/ 00073 00074 00075 /*-------------------------------------------------------------------------*\ 00076 - private - 00077 \*-------------------------------------------------------------------------*/ 00078 00079 00080 00081 /***************************************************************************\ 00082 * Instance methods * 00083 \***************************************************************************/ 00084 00085 /*-------------------------------------------------------------------------*\ 00086 - public - 00087 \*-------------------------------------------------------------------------*/ 00088 00089 /*------------- constructors & destructors --------------------------------*/ 00090 00091 /*------------------------------ access -----------------------------------*/ 00092 00093 00094 inline 00095 Camera *DrawActionBase::getCamera(void) const 00096 { 00097 return _camera; 00098 } 00099 00100 inline 00101 const Matrix &DrawActionBase::getCameraToWorld(void) 00102 { 00103 return _mCameraToWorld; 00104 } 00105 00106 inline 00107 Background *DrawActionBase::getBackground(void) const 00108 { 00109 return _background; 00110 } 00111 00112 inline 00113 Window *DrawActionBase::getWindow(void) const 00114 { 00115 return _window; 00116 } 00117 00118 inline 00119 Viewport *DrawActionBase::getViewport(void) const 00120 { 00121 return _viewport; 00122 } 00123 00124 inline 00125 bool DrawActionBase::getFrustumCulling(void) const 00126 { 00127 return _frustumCulling; 00128 } 00129 00130 inline 00131 bool DrawActionBase::getVolumeDrawing(void) const 00132 { 00133 return _volumeDrawing; 00134 } 00135 00136 inline 00137 bool DrawActionBase::getAutoFrustum(void) const 00138 { 00139 return _autoFrustum; 00140 } 00141 00142 inline 00143 const FrustumVolume& DrawActionBase::getFrustum(void) const 00144 { 00145 return _frustum; 00146 } 00147 00148 inline 00149 StatCollector* DrawActionBase::getStatistics(void) 00150 { 00151 if(_statistics == NULL) 00152 { 00153 _statistics = StatCollector::create(); 00154 _ownStat = true; 00155 } 00156 00157 return _statistics; 00158 } 00159 inline 00160 bool DrawActionBase::hasOwnStat(void) 00161 { 00162 return _ownStat; 00163 } 00164 00165 inline 00166 Material *DrawActionBase::getMaterial(void) const 00167 { 00168 return _pMaterial; 00169 } 00170 00171 inline 00172 NodePtr DrawActionBase::getMaterialNode(void) const 00173 { 00174 return _pMaterialNode; 00175 } 00176 00177 /*---------------------------- properties ---------------------------------*/ 00178 00179 /*-------------------------- your_category---------------------------------*/ 00180 00181 /*-------------------------- assignment -----------------------------------*/ 00182 00183 /*-------------------------- comparison -----------------------------------*/ 00184 00185 /*-------------------------------------------------------------------------*\ 00186 - protected - 00187 \*-------------------------------------------------------------------------*/ 00188 00189 00190 /*-------------------------------------------------------------------------*\ 00191 - private - 00192 \*-------------------------------------------------------------------------*/ 00193 00194 00195 OSG_END_NAMESPACE
1.5.5