Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

OSGParticlesBase.cpp

Go to the documentation of this file.
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  *****************************************************************************
00041  **                                                                         **
00042  **                  This file is automatically generated.                  **
00043  **                                                                         **
00044  **          Any changes made to this file WILL be lost when it is          **
00045  **           regenerated, which can become necessary at any time.          **
00046  **                                                                         **
00047  **     Do not change this file, changes should be done in the derived      **
00048  **     class Particles!
00049  **                                                                         **
00050  *****************************************************************************
00051 \*****************************************************************************/
00052 
00053 
00054 #define OSG_COMPILEPARTICLESINST
00055 
00056 #include <stdlib.h>
00057 #include <stdio.h>
00058 
00059 #include <OSGConfig.h>
00060 
00061 #include "OSGParticlesBase.h"
00062 #include "OSGParticles.h"
00063 
00064 
00065 OSG_USING_NAMESPACE
00066 
00067 const OSG::BitVector  ParticlesBase::ModeFieldMask = 
00068     (TypeTraits<BitVector>::One << ParticlesBase::ModeFieldId);
00069 
00070 const OSG::BitVector  ParticlesBase::PositionsFieldMask = 
00071     (TypeTraits<BitVector>::One << ParticlesBase::PositionsFieldId);
00072 
00073 const OSG::BitVector  ParticlesBase::SizesFieldMask = 
00074     (TypeTraits<BitVector>::One << ParticlesBase::SizesFieldId);
00075 
00076 const OSG::BitVector  ParticlesBase::SecPositionsFieldMask = 
00077     (TypeTraits<BitVector>::One << ParticlesBase::SecPositionsFieldId);
00078 
00079 const OSG::BitVector  ParticlesBase::ColorsFieldMask = 
00080     (TypeTraits<BitVector>::One << ParticlesBase::ColorsFieldId);
00081 
00082 const OSG::BitVector  ParticlesBase::NormalsFieldMask = 
00083     (TypeTraits<BitVector>::One << ParticlesBase::NormalsFieldId);
00084 
00085 const OSG::BitVector  ParticlesBase::IndicesFieldMask = 
00086     (TypeTraits<BitVector>::One << ParticlesBase::IndicesFieldId);
00087 
00088 const OSG::BitVector  ParticlesBase::TextureZsFieldMask = 
00089     (TypeTraits<BitVector>::One << ParticlesBase::TextureZsFieldId);
00090 
00091 const OSG::BitVector  ParticlesBase::DrawOrderFieldMask = 
00092     (TypeTraits<BitVector>::One << ParticlesBase::DrawOrderFieldId);
00093 
00094 const OSG::BitVector  ParticlesBase::DynamicFieldMask = 
00095     (TypeTraits<BitVector>::One << ParticlesBase::DynamicFieldId);
00096 
00097 const OSG::BitVector  ParticlesBase::PumpFieldMask = 
00098     (TypeTraits<BitVector>::One << ParticlesBase::PumpFieldId);
00099 
00100 const OSG::BitVector  ParticlesBase::BspFieldMask = 
00101     (TypeTraits<BitVector>::One << ParticlesBase::BspFieldId);
00102 
00103 const OSG::BitVector ParticlesBase::MTInfluenceMask = 
00104     (Inherited::MTInfluenceMask) | 
00105     (static_cast<BitVector>(0x0) << Inherited::NextFieldId); 
00106 
00107 
00108 // Field descriptions
00109 
00147 
00148 
00149 FieldDescription *ParticlesBase::_desc[] = 
00150 {
00151     new FieldDescription(SFUInt32::getClassType(), 
00152                      "mode", 
00153                      ModeFieldId, ModeFieldMask,
00154                      false,
00155                      (FieldAccessMethod) &ParticlesBase::getSFMode),
00156     new FieldDescription(SFGeoPositionsPtr::getClassType(), 
00157                      "positions", 
00158                      PositionsFieldId, PositionsFieldMask,
00159                      false,
00160                      (FieldAccessMethod) &ParticlesBase::getSFPositions),
00161     new FieldDescription(MFVec3f::getClassType(), 
00162                      "sizes", 
00163                      SizesFieldId, SizesFieldMask,
00164                      false,
00165                      (FieldAccessMethod) &ParticlesBase::getMFSizes),
00166     new FieldDescription(SFGeoPositionsPtr::getClassType(), 
00167                      "secPositions", 
00168                      SecPositionsFieldId, SecPositionsFieldMask,
00169                      false,
00170                      (FieldAccessMethod) &ParticlesBase::getSFSecPositions),
00171     new FieldDescription(SFGeoColorsPtr::getClassType(), 
00172                      "colors", 
00173                      ColorsFieldId, ColorsFieldMask,
00174                      false,
00175                      (FieldAccessMethod) &ParticlesBase::getSFColors),
00176     new FieldDescription(SFGeoNormalsPtr::getClassType(), 
00177                      "normals", 
00178                      NormalsFieldId, NormalsFieldMask,
00179                      false,
00180                      (FieldAccessMethod) &ParticlesBase::getSFNormals),
00181     new FieldDescription(MFInt32::getClassType(), 
00182                      "indices", 
00183                      IndicesFieldId, IndicesFieldMask,
00184                      false,
00185                      (FieldAccessMethod) &ParticlesBase::getMFIndices),
00186     new FieldDescription(MFReal32::getClassType(), 
00187                      "textureZs", 
00188                      TextureZsFieldId, TextureZsFieldMask,
00189                      false,
00190                      (FieldAccessMethod) &ParticlesBase::getMFTextureZs),
00191     new FieldDescription(SFUInt32::getClassType(), 
00192                      "drawOrder", 
00193                      DrawOrderFieldId, DrawOrderFieldMask,
00194                      false,
00195                      (FieldAccessMethod) &ParticlesBase::getSFDrawOrder),
00196     new FieldDescription(SFBool::getClassType(), 
00197                      "dynamic", 
00198                      DynamicFieldId, DynamicFieldMask,
00199                      false,
00200                      (FieldAccessMethod) &ParticlesBase::getSFDynamic),
00201     new FieldDescription(SFUInt32::getClassType(), 
00202                      "pump", 
00203                      PumpFieldId, PumpFieldMask,
00204                      true,
00205                      (FieldAccessMethod) &ParticlesBase::getSFPump),
00206     new FieldDescription(SFParticleBSPTree::getClassType(), 
00207                      "bsp", 
00208                      BspFieldId, BspFieldMask,
00209                      false,
00210                      (FieldAccessMethod) &ParticlesBase::getSFBsp)
00211 };
00212 
00213 
00214 FieldContainerType ParticlesBase::_type(
00215     "Particles",
00216     "MaterialDrawable",
00217     NULL,
00218     (PrototypeCreateF) &ParticlesBase::createEmpty,
00219     Particles::initMethod,
00220     _desc,
00221     sizeof(_desc));
00222 
00223 //OSG_FIELD_CONTAINER_DEF(ParticlesBase, ParticlesPtr)
00224 
00225 /*------------------------------ get -----------------------------------*/
00226 
00227 FieldContainerType &ParticlesBase::getType(void) 
00228 {
00229     return _type; 
00230 } 
00231 
00232 const FieldContainerType &ParticlesBase::getType(void) const 
00233 {
00234     return _type;
00235 } 
00236 
00237 
00238 FieldContainerPtr ParticlesBase::shallowCopy(void) const 
00239 { 
00240     ParticlesPtr returnValue; 
00241 
00242     newPtr(returnValue, dynamic_cast<const Particles *>(this)); 
00243 
00244     return returnValue; 
00245 }
00246 
00247 UInt32 ParticlesBase::getContainerSize(void) const 
00248 { 
00249     return sizeof(Particles); 
00250 }
00251 
00252 
00253 #if !defined(OSG_FIXED_MFIELDSYNC)
00254 void ParticlesBase::executeSync(      FieldContainer &other,
00255                                     const BitVector      &whichField)
00256 {
00257     this->executeSyncImpl((ParticlesBase *) &other, whichField);
00258 }
00259 #else
00260 void ParticlesBase::executeSync(      FieldContainer &other,
00261                                     const BitVector      &whichField,                                    const SyncInfo       &sInfo     )
00262 {
00263     this->executeSyncImpl((ParticlesBase *) &other, whichField, sInfo);
00264 }
00265 void ParticlesBase::execBeginEdit(const BitVector &whichField, 
00266                                             UInt32     uiAspect,
00267                                             UInt32     uiContainerSize) 
00268 {
00269     this->execBeginEditImpl(whichField, uiAspect, uiContainerSize);
00270 }
00271 
00272 void ParticlesBase::onDestroyAspect(UInt32 uiId, UInt32 uiAspect)
00273 {
00274     Inherited::onDestroyAspect(uiId, uiAspect);
00275 
00276     _mfSizes.terminateShare(uiAspect, this->getContainerSize());
00277     _mfIndices.terminateShare(uiAspect, this->getContainerSize());
00278     _mfTextureZs.terminateShare(uiAspect, this->getContainerSize());
00279 }
00280 #endif
00281 
00282 /*------------------------- constructors ----------------------------------*/
00283 
00284 #ifdef OSG_WIN32_ICL
00285 #pragma warning (disable : 383)
00286 #endif
00287 
00288 ParticlesBase::ParticlesBase(void) :
00289     _sfMode                   (UInt32(2)), 
00290     _sfPositions              (), 
00291     _mfSizes                  (), 
00292     _sfSecPositions           (), 
00293     _sfColors                 (), 
00294     _sfNormals                (), 
00295     _mfIndices                (), 
00296     _mfTextureZs              (), 
00297     _sfDrawOrder              (UInt32(0)), 
00298     _sfDynamic                (bool(true)), 
00299     _sfPump                   (), 
00300     _sfBsp                    (), 
00301     Inherited() 
00302 {
00303 }
00304 
00305 #ifdef OSG_WIN32_ICL
00306 #pragma warning (default : 383)
00307 #endif
00308 
00309 ParticlesBase::ParticlesBase(const ParticlesBase &source) :
00310     _sfMode                   (source._sfMode                   ), 
00311     _sfPositions              (source._sfPositions              ), 
00312     _mfSizes                  (source._mfSizes                  ), 
00313     _sfSecPositions           (source._sfSecPositions           ), 
00314     _sfColors                 (source._sfColors                 ), 
00315     _sfNormals                (source._sfNormals                ), 
00316     _mfIndices                (source._mfIndices                ), 
00317     _mfTextureZs              (source._mfTextureZs              ), 
00318     _sfDrawOrder              (source._sfDrawOrder              ), 
00319     _sfDynamic                (source._sfDynamic                ), 
00320     _sfPump                   (source._sfPump                   ), 
00321     _sfBsp                    (source._sfBsp                    ), 
00322     Inherited                 (source)
00323 {
00324 }
00325 
00326 /*-------------------------- destructors ----------------------------------*/
00327 
00328 ParticlesBase::~ParticlesBase(void)
00329 {
00330 }
00331 
00332 /*------------------------------ access -----------------------------------*/
00333 
00334 UInt32 ParticlesBase::getBinSize(const BitVector &whichField)
00335 {
00336     UInt32 returnValue = Inherited::getBinSize(whichField);
00337 
00338     if(FieldBits::NoField != (ModeFieldMask & whichField))
00339     {
00340         returnValue += _sfMode.getBinSize();
00341     }
00342 
00343     if(FieldBits::NoField != (PositionsFieldMask & whichField))
00344     {
00345         returnValue += _sfPositions.getBinSize();
00346     }
00347 
00348     if(FieldBits::NoField != (SizesFieldMask & whichField))
00349     {
00350         returnValue += _mfSizes.getBinSize();
00351     }
00352 
00353     if(FieldBits::NoField != (SecPositionsFieldMask & whichField))
00354     {
00355         returnValue += _sfSecPositions.getBinSize();
00356     }
00357 
00358     if(FieldBits::NoField != (ColorsFieldMask & whichField))
00359     {
00360         returnValue += _sfColors.getBinSize();
00361     }
00362 
00363     if(FieldBits::NoField != (NormalsFieldMask & whichField))
00364     {
00365         returnValue += _sfNormals.getBinSize();
00366     }
00367 
00368     if(FieldBits::NoField != (IndicesFieldMask & whichField))
00369     {
00370         returnValue += _mfIndices.getBinSize();
00371     }
00372 
00373     if(FieldBits::NoField != (TextureZsFieldMask & whichField))
00374     {
00375         returnValue += _mfTextureZs.getBinSize();
00376     }
00377 
00378     if(FieldBits::NoField != (DrawOrderFieldMask & whichField))
00379     {
00380         returnValue += _sfDrawOrder.getBinSize();
00381     }
00382 
00383     if(FieldBits::NoField != (DynamicFieldMask & whichField))
00384     {
00385         returnValue += _sfDynamic.getBinSize();
00386     }
00387 
00388     if(FieldBits::NoField != (PumpFieldMask & whichField))
00389     {
00390         returnValue += _sfPump.getBinSize();
00391     }
00392 
00393     if(FieldBits::NoField != (BspFieldMask & whichField))
00394     {
00395         returnValue += _sfBsp.getBinSize();
00396     }
00397 
00398 
00399     return returnValue;
00400 }
00401 
00402 void ParticlesBase::copyToBin(      BinaryDataHandler &pMem,
00403                                   const BitVector         &whichField)
00404 {
00405     Inherited::copyToBin(pMem, whichField);
00406 
00407     if(FieldBits::NoField != (ModeFieldMask & whichField))
00408     {
00409         _sfMode.copyToBin(pMem);
00410     }
00411 
00412     if(FieldBits::NoField != (PositionsFieldMask & whichField))
00413     {
00414         _sfPositions.copyToBin(pMem);
00415     }
00416 
00417     if(FieldBits::NoField != (SizesFieldMask & whichField))
00418     {
00419         _mfSizes.copyToBin(pMem);
00420     }
00421 
00422     if(FieldBits::NoField != (SecPositionsFieldMask & whichField))
00423     {
00424         _sfSecPositions.copyToBin(pMem);
00425     }
00426 
00427     if(FieldBits::NoField != (ColorsFieldMask & whichField))
00428     {
00429         _sfColors.copyToBin(pMem);
00430     }
00431 
00432     if(FieldBits::NoField != (NormalsFieldMask & whichField))
00433     {
00434         _sfNormals.copyToBin(pMem);
00435     }
00436 
00437     if(FieldBits::NoField != (IndicesFieldMask & whichField))
00438     {
00439         _mfIndices.copyToBin(pMem);
00440     }
00441 
00442     if(FieldBits::NoField != (TextureZsFieldMask & whichField))
00443     {
00444         _mfTextureZs.copyToBin(pMem);
00445     }
00446 
00447     if(FieldBits::NoField != (DrawOrderFieldMask & whichField))
00448     {
00449         _sfDrawOrder.copyToBin(pMem);
00450     }
00451 
00452     if(FieldBits::NoField != (DynamicFieldMask & whichField))
00453     {
00454         _sfDynamic.copyToBin(pMem);
00455     }
00456 
00457     if(FieldBits::NoField != (PumpFieldMask & whichField))
00458     {
00459         _sfPump.copyToBin(pMem);
00460     }
00461 
00462     if(FieldBits::NoField != (BspFieldMask & whichField))
00463     {
00464         _sfBsp.copyToBin(pMem);
00465     }
00466 
00467 
00468 }
00469 
00470 void ParticlesBase::copyFromBin(      BinaryDataHandler &pMem,
00471                                     const BitVector    &whichField)
00472 {
00473     Inherited::copyFromBin(pMem, whichField);
00474 
00475     if(FieldBits::NoField != (ModeFieldMask & whichField))
00476     {
00477         _sfMode.copyFromBin(pMem);
00478     }
00479 
00480     if(FieldBits::NoField != (PositionsFieldMask & whichField))
00481     {
00482         _sfPositions.copyFromBin(pMem);
00483     }
00484 
00485     if(FieldBits::NoField != (SizesFieldMask & whichField))
00486     {
00487         _mfSizes.copyFromBin(pMem);
00488     }
00489 
00490     if(FieldBits::NoField != (SecPositionsFieldMask & whichField))
00491     {
00492         _sfSecPositions.copyFromBin(pMem);
00493     }
00494 
00495     if(FieldBits::NoField != (ColorsFieldMask & whichField))
00496     {
00497         _sfColors.copyFromBin(pMem);
00498     }
00499 
00500     if(FieldBits::NoField != (NormalsFieldMask & whichField))
00501     {
00502         _sfNormals.copyFromBin(pMem);
00503     }
00504 
00505     if(FieldBits::NoField != (IndicesFieldMask & whichField))
00506     {
00507         _mfIndices.copyFromBin(pMem);
00508     }
00509 
00510     if(FieldBits::NoField != (TextureZsFieldMask & whichField))
00511     {
00512         _mfTextureZs.copyFromBin(pMem);
00513     }
00514 
00515     if(FieldBits::NoField != (DrawOrderFieldMask & whichField))
00516     {
00517         _sfDrawOrder.copyFromBin(pMem);
00518     }
00519 
00520     if(FieldBits::NoField != (DynamicFieldMask & whichField))
00521     {
00522         _sfDynamic.copyFromBin(pMem);
00523     }
00524 
00525     if(FieldBits::NoField != (PumpFieldMask & whichField))
00526     {
00527         _sfPump.copyFromBin(pMem);
00528     }
00529 
00530     if(FieldBits::NoField != (BspFieldMask & whichField))
00531     {
00532         _sfBsp.copyFromBin(pMem);
00533     }
00534 
00535 
00536 }
00537 
00538 #if !defined(OSG_FIXED_MFIELDSYNC)
00539 void ParticlesBase::executeSyncImpl(      ParticlesBase *pOther,
00540                                         const BitVector         &whichField)
00541 {
00542 
00543     Inherited::executeSyncImpl(pOther, whichField);
00544 
00545     if(FieldBits::NoField != (ModeFieldMask & whichField))
00546         _sfMode.syncWith(pOther->_sfMode);
00547 
00548     if(FieldBits::NoField != (PositionsFieldMask & whichField))
00549         _sfPositions.syncWith(pOther->_sfPositions);
00550 
00551     if(FieldBits::NoField != (SizesFieldMask & whichField))
00552         _mfSizes.syncWith(pOther->_mfSizes);
00553 
00554     if(FieldBits::NoField != (SecPositionsFieldMask & whichField))
00555         _sfSecPositions.syncWith(pOther->_sfSecPositions);
00556 
00557     if(FieldBits::NoField != (ColorsFieldMask & whichField))
00558         _sfColors.syncWith(pOther->_sfColors);
00559 
00560     if(FieldBits::NoField != (NormalsFieldMask & whichField))
00561         _sfNormals.syncWith(pOther->_sfNormals);
00562 
00563     if(FieldBits::NoField != (IndicesFieldMask & whichField))
00564         _mfIndices.syncWith(pOther->_mfIndices);
00565 
00566     if(FieldBits::NoField != (TextureZsFieldMask & whichField))
00567         _mfTextureZs.syncWith(pOther->_mfTextureZs);
00568 
00569     if(FieldBits::NoField != (DrawOrderFieldMask & whichField))
00570         _sfDrawOrder.syncWith(pOther->_sfDrawOrder);
00571 
00572     if(FieldBits::NoField != (DynamicFieldMask & whichField))
00573         _sfDynamic.syncWith(pOther->_sfDynamic);
00574 
00575     if(FieldBits::NoField != (PumpFieldMask & whichField))
00576         _sfPump.syncWith(pOther->_sfPump);
00577 
00578     if(FieldBits::NoField != (BspFieldMask & whichField))
00579         _sfBsp.syncWith(pOther->_sfBsp);
00580 
00581 
00582 }
00583 #else
00584 void ParticlesBase::executeSyncImpl(      ParticlesBase *pOther,
00585                                         const BitVector         &whichField,
00586                                         const SyncInfo          &sInfo      )
00587 {
00588 
00589     Inherited::executeSyncImpl(pOther, whichField, sInfo);
00590 
00591     if(FieldBits::NoField != (ModeFieldMask & whichField))
00592         _sfMode.syncWith(pOther->_sfMode);
00593 
00594     if(FieldBits::NoField != (PositionsFieldMask & whichField))
00595         _sfPositions.syncWith(pOther->_sfPositions);
00596 
00597     if(FieldBits::NoField != (SecPositionsFieldMask & whichField))
00598         _sfSecPositions.syncWith(pOther->_sfSecPositions);
00599 
00600     if(FieldBits::NoField != (ColorsFieldMask & whichField))
00601         _sfColors.syncWith(pOther->_sfColors);
00602 
00603     if(FieldBits::NoField != (NormalsFieldMask & whichField))
00604         _sfNormals.syncWith(pOther->_sfNormals);
00605 
00606     if(FieldBits::NoField != (DrawOrderFieldMask & whichField))
00607         _sfDrawOrder.syncWith(pOther->_sfDrawOrder);
00608 
00609     if(FieldBits::NoField != (DynamicFieldMask & whichField))
00610         _sfDynamic.syncWith(pOther->_sfDynamic);
00611 
00612     if(FieldBits::NoField != (PumpFieldMask & whichField))
00613         _sfPump.syncWith(pOther->_sfPump);
00614 
00615     if(FieldBits::NoField != (BspFieldMask & whichField))
00616         _sfBsp.syncWith(pOther->_sfBsp);
00617 
00618 
00619     if(FieldBits::NoField != (SizesFieldMask & whichField))
00620         _mfSizes.syncWith(pOther->_mfSizes, sInfo);
00621 
00622     if(FieldBits::NoField != (IndicesFieldMask & whichField))
00623         _mfIndices.syncWith(pOther->_mfIndices, sInfo);
00624 
00625     if(FieldBits::NoField != (TextureZsFieldMask & whichField))
00626         _mfTextureZs.syncWith(pOther->_mfTextureZs, sInfo);
00627 
00628 
00629 }
00630 
00631 void ParticlesBase::execBeginEditImpl (const BitVector &whichField, 
00632                                                  UInt32     uiAspect,
00633                                                  UInt32     uiContainerSize)
00634 {
00635     Inherited::execBeginEditImpl(whichField, uiAspect, uiContainerSize);
00636 
00637     if(FieldBits::NoField != (SizesFieldMask & whichField))
00638         _mfSizes.beginEdit(uiAspect, uiContainerSize);
00639 
00640     if(FieldBits::NoField != (IndicesFieldMask & whichField))
00641         _mfIndices.beginEdit(uiAspect, uiContainerSize);
00642 
00643     if(FieldBits::NoField != (TextureZsFieldMask & whichField))
00644         _mfTextureZs.beginEdit(uiAspect, uiContainerSize);
00645 
00646 }
00647 #endif
00648 
00649 
00650 
00651 #include <OSGSFieldTypeDef.inl>
00652 #include <OSGMFieldTypeDef.inl>
00653 
00654 OSG_BEGIN_NAMESPACE
00655 
00656 #if !defined(OSG_DO_DOC) || defined(OSG_DOC_DEV)
00657 DataType FieldDataTraits<ParticlesPtr>::_type("ParticlesPtr", "MaterialDrawablePtr");
00658 #endif
00659 
00660 OSG_DLLEXPORT_SFIELD_DEF1(ParticlesPtr, OSG_SYSTEMLIB_DLLTMPLMAPPING);
00661 OSG_DLLEXPORT_MFIELD_DEF1(ParticlesPtr, OSG_SYSTEMLIB_DLLTMPLMAPPING);
00662 
00663 OSG_END_NAMESPACE
00664 
00665 
00666 /*------------------------------------------------------------------------*/
00667 /*                              cvs id's                                  */
00668 
00669 #ifdef OSG_SGI_CC
00670 #pragma set woff 1174
00671 #endif
00672 
00673 #ifdef OSG_LINUX_ICC
00674 #pragma warning( disable : 177 )
00675 #endif
00676 
00677 namespace
00678 {
00679     static Char8 cvsid_cpp       [] = "@(#)$Id: FCBaseTemplate_cpp.h,v 1.42 2004/08/03 05:53:03 dirk Exp $";
00680     static Char8 cvsid_hpp       [] = OSGPARTICLESBASE_HEADER_CVSID;
00681     static Char8 cvsid_inl       [] = OSGPARTICLESBASE_INLINE_CVSID;
00682 
00683     static Char8 cvsid_fields_hpp[] = OSGPARTICLESFIELDS_HEADER_CVSID;
00684 }
00685 

Generated on Thu Aug 25 04:08:06 2005 for OpenSG by  doxygen 1.4.3