00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054 #define OSG_COMPILESIMPLESTATISTICSFOREGROUNDINST
00055
00056 #include <stdlib.h>
00057 #include <stdio.h>
00058
00059 #include <OSGConfig.h>
00060
00061 #include "OSGSimpleStatisticsForegroundBase.h"
00062 #include "OSGSimpleStatisticsForeground.h"
00063
00064
00065 OSG_BEGIN_NAMESPACE
00066
00067 const OSG::BitVector SimpleStatisticsForegroundBase::FormatsFieldMask =
00068 (TypeTraits<BitVector>::One << SimpleStatisticsForegroundBase::FormatsFieldId);
00069
00070 const OSG::BitVector SimpleStatisticsForegroundBase::SizeFieldMask =
00071 (TypeTraits<BitVector>::One << SimpleStatisticsForegroundBase::SizeFieldId);
00072
00073 const OSG::BitVector SimpleStatisticsForegroundBase::ColorFieldMask =
00074 (TypeTraits<BitVector>::One << SimpleStatisticsForegroundBase::ColorFieldId);
00075
00076 const OSG::BitVector SimpleStatisticsForegroundBase::ShadowColorFieldMask =
00077 (TypeTraits<BitVector>::One << SimpleStatisticsForegroundBase::ShadowColorFieldId);
00078
00079 const OSG::BitVector SimpleStatisticsForegroundBase::BgColorFieldMask =
00080 (TypeTraits<BitVector>::One << SimpleStatisticsForegroundBase::BgColorFieldId);
00081
00082 const OSG::BitVector SimpleStatisticsForegroundBase::FamilyFieldMask =
00083 (TypeTraits<BitVector>::One << SimpleStatisticsForegroundBase::FamilyFieldId);
00084
00085 const OSG::BitVector SimpleStatisticsForegroundBase::ShadowOffsetFieldMask =
00086 (TypeTraits<BitVector>::One << SimpleStatisticsForegroundBase::ShadowOffsetFieldId);
00087
00088 const OSG::BitVector SimpleStatisticsForegroundBase::HorizontalAlignFieldMask =
00089 (TypeTraits<BitVector>::One << SimpleStatisticsForegroundBase::HorizontalAlignFieldId);
00090
00091 const OSG::BitVector SimpleStatisticsForegroundBase::VerticalAlignFieldMask =
00092 (TypeTraits<BitVector>::One << SimpleStatisticsForegroundBase::VerticalAlignFieldId);
00093
00094 const OSG::BitVector SimpleStatisticsForegroundBase::BorderColorFieldMask =
00095 (TypeTraits<BitVector>::One << SimpleStatisticsForegroundBase::BorderColorFieldId);
00096
00097 const OSG::BitVector SimpleStatisticsForegroundBase::BorderOffsetFieldMask =
00098 (TypeTraits<BitVector>::One << SimpleStatisticsForegroundBase::BorderOffsetFieldId);
00099
00100 const OSG::BitVector SimpleStatisticsForegroundBase::TextMarginFieldMask =
00101 (TypeTraits<BitVector>::One << SimpleStatisticsForegroundBase::TextMarginFieldId);
00102
00103 const OSG::BitVector SimpleStatisticsForegroundBase::MTInfluenceMask =
00104 (Inherited::MTInfluenceMask) |
00105 (static_cast<BitVector>(0x0) << Inherited::NextFieldId);
00106
00107
00108
00109
00147
00148
00149 FieldDescription *SimpleStatisticsForegroundBase::_desc[] =
00150 {
00151 new FieldDescription(MFString::getClassType(),
00152 "formats",
00153 FormatsFieldId, FormatsFieldMask,
00154 false,
00155 (FieldAccessMethod) &SimpleStatisticsForegroundBase::getMFFormats),
00156 new FieldDescription(SFReal32::getClassType(),
00157 "size",
00158 SizeFieldId, SizeFieldMask,
00159 false,
00160 (FieldAccessMethod) &SimpleStatisticsForegroundBase::getSFSize),
00161 new FieldDescription(SFColor4f::getClassType(),
00162 "color",
00163 ColorFieldId, ColorFieldMask,
00164 false,
00165 (FieldAccessMethod) &SimpleStatisticsForegroundBase::getSFColor),
00166 new FieldDescription(SFColor4f::getClassType(),
00167 "shadowColor",
00168 ShadowColorFieldId, ShadowColorFieldMask,
00169 false,
00170 (FieldAccessMethod) &SimpleStatisticsForegroundBase::getSFShadowColor),
00171 new FieldDescription(SFColor4f::getClassType(),
00172 "bgColor",
00173 BgColorFieldId, BgColorFieldMask,
00174 false,
00175 (FieldAccessMethod) &SimpleStatisticsForegroundBase::getSFBgColor),
00176 new FieldDescription(SFString::getClassType(),
00177 "family",
00178 FamilyFieldId, FamilyFieldMask,
00179 false,
00180 (FieldAccessMethod) &SimpleStatisticsForegroundBase::getSFFamily),
00181 new FieldDescription(SFVec2f::getClassType(),
00182 "shadowOffset",
00183 ShadowOffsetFieldId, ShadowOffsetFieldMask,
00184 false,
00185 (FieldAccessMethod) &SimpleStatisticsForegroundBase::getSFShadowOffset),
00186 new FieldDescription(SFUInt8::getClassType(),
00187 "horizontalAlign",
00188 HorizontalAlignFieldId, HorizontalAlignFieldMask,
00189 false,
00190 (FieldAccessMethod) &SimpleStatisticsForegroundBase::getSFHorizontalAlign),
00191 new FieldDescription(SFUInt8::getClassType(),
00192 "verticalAlign",
00193 VerticalAlignFieldId, VerticalAlignFieldMask,
00194 false,
00195 (FieldAccessMethod) &SimpleStatisticsForegroundBase::getSFVerticalAlign),
00196 new FieldDescription(SFColor4f::getClassType(),
00197 "borderColor",
00198 BorderColorFieldId, BorderColorFieldMask,
00199 false,
00200 (FieldAccessMethod) &SimpleStatisticsForegroundBase::getSFBorderColor),
00201 new FieldDescription(SFVec2f::getClassType(),
00202 "borderOffset",
00203 BorderOffsetFieldId, BorderOffsetFieldMask,
00204 false,
00205 (FieldAccessMethod) &SimpleStatisticsForegroundBase::getSFBorderOffset),
00206 new FieldDescription(SFVec2f::getClassType(),
00207 "textMargin",
00208 TextMarginFieldId, TextMarginFieldMask,
00209 false,
00210 (FieldAccessMethod) &SimpleStatisticsForegroundBase::getSFTextMargin)
00211 };
00212
00213
00214 FieldContainerType SimpleStatisticsForegroundBase::_type(
00215 "SimpleStatisticsForeground",
00216 "StatisticsForeground",
00217 NULL,
00218 (PrototypeCreateF) &SimpleStatisticsForegroundBase::createEmpty,
00219 SimpleStatisticsForeground::initMethod,
00220 _desc,
00221 sizeof(_desc));
00222
00223
00224
00225
00226
00227 FieldContainerType &SimpleStatisticsForegroundBase::getType(void)
00228 {
00229 return _type;
00230 }
00231
00232 const FieldContainerType &SimpleStatisticsForegroundBase::getType(void) const
00233 {
00234 return _type;
00235 }
00236
00237
00238 FieldContainerPtr SimpleStatisticsForegroundBase::shallowCopy(void) const
00239 {
00240 SimpleStatisticsForegroundPtr returnValue;
00241
00242 newPtr(returnValue, dynamic_cast<const SimpleStatisticsForeground *>(this));
00243
00244 return returnValue;
00245 }
00246
00247 UInt32 SimpleStatisticsForegroundBase::getContainerSize(void) const
00248 {
00249 return sizeof(SimpleStatisticsForeground);
00250 }
00251
00252
00253 #if !defined(OSG_FIXED_MFIELDSYNC)
00254 void SimpleStatisticsForegroundBase::executeSync( FieldContainer &other,
00255 const BitVector &whichField)
00256 {
00257 this->executeSyncImpl((SimpleStatisticsForegroundBase *) &other, whichField);
00258 }
00259 #else
00260 void SimpleStatisticsForegroundBase::executeSync( FieldContainer &other,
00261 const BitVector &whichField, const SyncInfo &sInfo )
00262 {
00263 this->executeSyncImpl((SimpleStatisticsForegroundBase *) &other, whichField, sInfo);
00264 }
00265 void SimpleStatisticsForegroundBase::execBeginEdit(const BitVector &whichField,
00266 UInt32 uiAspect,
00267 UInt32 uiContainerSize)
00268 {
00269 this->execBeginEditImpl(whichField, uiAspect, uiContainerSize);
00270 }
00271
00272 void SimpleStatisticsForegroundBase::onDestroyAspect(UInt32 uiId, UInt32 uiAspect)
00273 {
00274 Inherited::onDestroyAspect(uiId, uiAspect);
00275
00276 _mfFormats.terminateShare(uiAspect, this->getContainerSize());
00277 }
00278 #endif
00279
00280
00281
00282 #ifdef OSG_WIN32_ICL
00283 #pragma warning (disable : 383)
00284 #endif
00285
00286 SimpleStatisticsForegroundBase::SimpleStatisticsForegroundBase(void) :
00287 _mfFormats (),
00288 _sfSize (Real32(16)),
00289 _sfColor (Color4f(1,1,1,1)),
00290 _sfShadowColor (Color4f(0,0,0,1)),
00291 _sfBgColor (Color4f(0,0,0,0)),
00292 _sfFamily (),
00293 _sfShadowOffset (Vec2f(1,-1)),
00294 _sfHorizontalAlign (UInt8(0)),
00295 _sfVerticalAlign (UInt8(0)),
00296 _sfBorderColor (Color4f(-1,-1,-1,0)),
00297 _sfBorderOffset (Vec2f(4,4)),
00298 _sfTextMargin (Vec2f(0,0)),
00299 Inherited()
00300 {
00301 }
00302
00303 #ifdef OSG_WIN32_ICL
00304 #pragma warning (default : 383)
00305 #endif
00306
00307 SimpleStatisticsForegroundBase::SimpleStatisticsForegroundBase(const SimpleStatisticsForegroundBase &source) :
00308 _mfFormats (source._mfFormats ),
00309 _sfSize (source._sfSize ),
00310 _sfColor (source._sfColor ),
00311 _sfShadowColor (source._sfShadowColor ),
00312 _sfBgColor (source._sfBgColor ),
00313 _sfFamily (source._sfFamily ),
00314 _sfShadowOffset (source._sfShadowOffset ),
00315 _sfHorizontalAlign (source._sfHorizontalAlign ),
00316 _sfVerticalAlign (source._sfVerticalAlign ),
00317 _sfBorderColor (source._sfBorderColor ),
00318 _sfBorderOffset (source._sfBorderOffset ),
00319 _sfTextMargin (source._sfTextMargin ),
00320 Inherited (source)
00321 {
00322 }
00323
00324
00325
00326 SimpleStatisticsForegroundBase::~SimpleStatisticsForegroundBase(void)
00327 {
00328 }
00329
00330
00331
00332 UInt32 SimpleStatisticsForegroundBase::getBinSize(const BitVector &whichField)
00333 {
00334 UInt32 returnValue = Inherited::getBinSize(whichField);
00335
00336 if(FieldBits::NoField != (FormatsFieldMask & whichField))
00337 {
00338 returnValue += _mfFormats.getBinSize();
00339 }
00340
00341 if(FieldBits::NoField != (SizeFieldMask & whichField))
00342 {
00343 returnValue += _sfSize.getBinSize();
00344 }
00345
00346 if(FieldBits::NoField != (ColorFieldMask & whichField))
00347 {
00348 returnValue += _sfColor.getBinSize();
00349 }
00350
00351 if(FieldBits::NoField != (ShadowColorFieldMask & whichField))
00352 {
00353 returnValue += _sfShadowColor.getBinSize();
00354 }
00355
00356 if(FieldBits::NoField != (BgColorFieldMask & whichField))
00357 {
00358 returnValue += _sfBgColor.getBinSize();
00359 }
00360
00361 if(FieldBits::NoField != (FamilyFieldMask & whichField))
00362 {
00363 returnValue += _sfFamily.getBinSize();
00364 }
00365
00366 if(FieldBits::NoField != (ShadowOffsetFieldMask & whichField))
00367 {
00368 returnValue += _sfShadowOffset.getBinSize();
00369 }
00370
00371 if(FieldBits::NoField != (HorizontalAlignFieldMask & whichField))
00372 {
00373 returnValue += _sfHorizontalAlign.getBinSize();
00374 }
00375
00376 if(FieldBits::NoField != (VerticalAlignFieldMask & whichField))
00377 {
00378 returnValue += _sfVerticalAlign.getBinSize();
00379 }
00380
00381 if(FieldBits::NoField != (BorderColorFieldMask & whichField))
00382 {
00383 returnValue += _sfBorderColor.getBinSize();
00384 }
00385
00386 if(FieldBits::NoField != (BorderOffsetFieldMask & whichField))
00387 {
00388 returnValue += _sfBorderOffset.getBinSize();
00389 }
00390
00391 if(FieldBits::NoField != (TextMarginFieldMask & whichField))
00392 {
00393 returnValue += _sfTextMargin.getBinSize();
00394 }
00395
00396
00397 return returnValue;
00398 }
00399
00400 void SimpleStatisticsForegroundBase::copyToBin( BinaryDataHandler &pMem,
00401 const BitVector &whichField)
00402 {
00403 Inherited::copyToBin(pMem, whichField);
00404
00405 if(FieldBits::NoField != (FormatsFieldMask & whichField))
00406 {
00407 _mfFormats.copyToBin(pMem);
00408 }
00409
00410 if(FieldBits::NoField != (SizeFieldMask & whichField))
00411 {
00412 _sfSize.copyToBin(pMem);
00413 }
00414
00415 if(FieldBits::NoField != (ColorFieldMask & whichField))
00416 {
00417 _sfColor.copyToBin(pMem);
00418 }
00419
00420 if(FieldBits::NoField != (ShadowColorFieldMask & whichField))
00421 {
00422 _sfShadowColor.copyToBin(pMem);
00423 }
00424
00425 if(FieldBits::NoField != (BgColorFieldMask & whichField))
00426 {
00427 _sfBgColor.copyToBin(pMem);
00428 }
00429
00430 if(FieldBits::NoField != (FamilyFieldMask & whichField))
00431 {
00432 _sfFamily.copyToBin(pMem);
00433 }
00434
00435 if(FieldBits::NoField != (ShadowOffsetFieldMask & whichField))
00436 {
00437 _sfShadowOffset.copyToBin(pMem);
00438 }
00439
00440 if(FieldBits::NoField != (HorizontalAlignFieldMask & whichField))
00441 {
00442 _sfHorizontalAlign.copyToBin(pMem);
00443 }
00444
00445 if(FieldBits::NoField != (VerticalAlignFieldMask & whichField))
00446 {
00447 _sfVerticalAlign.copyToBin(pMem);
00448 }
00449
00450 if(FieldBits::NoField != (BorderColorFieldMask & whichField))
00451 {
00452 _sfBorderColor.copyToBin(pMem);
00453 }
00454
00455 if(FieldBits::NoField != (BorderOffsetFieldMask & whichField))
00456 {
00457 _sfBorderOffset.copyToBin(pMem);
00458 }
00459
00460 if(FieldBits::NoField != (TextMarginFieldMask & whichField))
00461 {
00462 _sfTextMargin.copyToBin(pMem);
00463 }
00464
00465
00466 }
00467
00468 void SimpleStatisticsForegroundBase::copyFromBin( BinaryDataHandler &pMem,
00469 const BitVector &whichField)
00470 {
00471 Inherited::copyFromBin(pMem, whichField);
00472
00473 if(FieldBits::NoField != (FormatsFieldMask & whichField))
00474 {
00475 _mfFormats.copyFromBin(pMem);
00476 }
00477
00478 if(FieldBits::NoField != (SizeFieldMask & whichField))
00479 {
00480 _sfSize.copyFromBin(pMem);
00481 }
00482
00483 if(FieldBits::NoField != (ColorFieldMask & whichField))
00484 {
00485 _sfColor.copyFromBin(pMem);
00486 }
00487
00488 if(FieldBits::NoField != (ShadowColorFieldMask & whichField))
00489 {
00490 _sfShadowColor.copyFromBin(pMem);
00491 }
00492
00493 if(FieldBits::NoField != (BgColorFieldMask & whichField))
00494 {
00495 _sfBgColor.copyFromBin(pMem);
00496 }
00497
00498 if(FieldBits::NoField != (FamilyFieldMask & whichField))
00499 {
00500 _sfFamily.copyFromBin(pMem);
00501 }
00502
00503 if(FieldBits::NoField != (ShadowOffsetFieldMask & whichField))
00504 {
00505 _sfShadowOffset.copyFromBin(pMem);
00506 }
00507
00508 if(FieldBits::NoField != (HorizontalAlignFieldMask & whichField))
00509 {
00510 _sfHorizontalAlign.copyFromBin(pMem);
00511 }
00512
00513 if(FieldBits::NoField != (VerticalAlignFieldMask & whichField))
00514 {
00515 _sfVerticalAlign.copyFromBin(pMem);
00516 }
00517
00518 if(FieldBits::NoField != (BorderColorFieldMask & whichField))
00519 {
00520 _sfBorderColor.copyFromBin(pMem);
00521 }
00522
00523 if(FieldBits::NoField != (BorderOffsetFieldMask & whichField))
00524 {
00525 _sfBorderOffset.copyFromBin(pMem);
00526 }
00527
00528 if(FieldBits::NoField != (TextMarginFieldMask & whichField))
00529 {
00530 _sfTextMargin.copyFromBin(pMem);
00531 }
00532
00533
00534 }
00535
00536 #if !defined(OSG_FIXED_MFIELDSYNC)
00537 void SimpleStatisticsForegroundBase::executeSyncImpl( SimpleStatisticsForegroundBase *pOther,
00538 const BitVector &whichField)
00539 {
00540
00541 Inherited::executeSyncImpl(pOther, whichField);
00542
00543 if(FieldBits::NoField != (FormatsFieldMask & whichField))
00544 _mfFormats.syncWith(pOther->_mfFormats);
00545
00546 if(FieldBits::NoField != (SizeFieldMask & whichField))
00547 _sfSize.syncWith(pOther->_sfSize);
00548
00549 if(FieldBits::NoField != (ColorFieldMask & whichField))
00550 _sfColor.syncWith(pOther->_sfColor);
00551
00552 if(FieldBits::NoField != (ShadowColorFieldMask & whichField))
00553 _sfShadowColor.syncWith(pOther->_sfShadowColor);
00554
00555 if(FieldBits::NoField != (BgColorFieldMask & whichField))
00556 _sfBgColor.syncWith(pOther->_sfBgColor);
00557
00558 if(FieldBits::NoField != (FamilyFieldMask & whichField))
00559 _sfFamily.syncWith(pOther->_sfFamily);
00560
00561 if(FieldBits::NoField != (ShadowOffsetFieldMask & whichField))
00562 _sfShadowOffset.syncWith(pOther->_sfShadowOffset);
00563
00564 if(FieldBits::NoField != (HorizontalAlignFieldMask & whichField))
00565 _sfHorizontalAlign.syncWith(pOther->_sfHorizontalAlign);
00566
00567 if(FieldBits::NoField != (VerticalAlignFieldMask & whichField))
00568 _sfVerticalAlign.syncWith(pOther->_sfVerticalAlign);
00569
00570 if(FieldBits::NoField != (BorderColorFieldMask & whichField))
00571 _sfBorderColor.syncWith(pOther->_sfBorderColor);
00572
00573 if(FieldBits::NoField != (BorderOffsetFieldMask & whichField))
00574 _sfBorderOffset.syncWith(pOther->_sfBorderOffset);
00575
00576 if(FieldBits::NoField != (TextMarginFieldMask & whichField))
00577 _sfTextMargin.syncWith(pOther->_sfTextMargin);
00578
00579
00580 }
00581 #else
00582 void SimpleStatisticsForegroundBase::executeSyncImpl( SimpleStatisticsForegroundBase *pOther,
00583 const BitVector &whichField,
00584 const SyncInfo &sInfo )
00585 {
00586
00587 Inherited::executeSyncImpl(pOther, whichField, sInfo);
00588
00589 if(FieldBits::NoField != (SizeFieldMask & whichField))
00590 _sfSize.syncWith(pOther->_sfSize);
00591
00592 if(FieldBits::NoField != (ColorFieldMask & whichField))
00593 _sfColor.syncWith(pOther->_sfColor);
00594
00595 if(FieldBits::NoField != (ShadowColorFieldMask & whichField))
00596 _sfShadowColor.syncWith(pOther->_sfShadowColor);
00597
00598 if(FieldBits::NoField != (BgColorFieldMask & whichField))
00599 _sfBgColor.syncWith(pOther->_sfBgColor);
00600
00601 if(FieldBits::NoField != (FamilyFieldMask & whichField))
00602 _sfFamily.syncWith(pOther->_sfFamily);
00603
00604 if(FieldBits::NoField != (ShadowOffsetFieldMask & whichField))
00605 _sfShadowOffset.syncWith(pOther->_sfShadowOffset);
00606
00607 if(FieldBits::NoField != (HorizontalAlignFieldMask & whichField))
00608 _sfHorizontalAlign.syncWith(pOther->_sfHorizontalAlign);
00609
00610 if(FieldBits::NoField != (VerticalAlignFieldMask & whichField))
00611 _sfVerticalAlign.syncWith(pOther->_sfVerticalAlign);
00612
00613 if(FieldBits::NoField != (BorderColorFieldMask & whichField))
00614 _sfBorderColor.syncWith(pOther->_sfBorderColor);
00615
00616 if(FieldBits::NoField != (BorderOffsetFieldMask & whichField))
00617 _sfBorderOffset.syncWith(pOther->_sfBorderOffset);
00618
00619 if(FieldBits::NoField != (TextMarginFieldMask & whichField))
00620 _sfTextMargin.syncWith(pOther->_sfTextMargin);
00621
00622
00623 if(FieldBits::NoField != (FormatsFieldMask & whichField))
00624 _mfFormats.syncWith(pOther->_mfFormats, sInfo);
00625
00626
00627 }
00628
00629 void SimpleStatisticsForegroundBase::execBeginEditImpl (const BitVector &whichField,
00630 UInt32 uiAspect,
00631 UInt32 uiContainerSize)
00632 {
00633 Inherited::execBeginEditImpl(whichField, uiAspect, uiContainerSize);
00634
00635 if(FieldBits::NoField != (FormatsFieldMask & whichField))
00636 _mfFormats.beginEdit(uiAspect, uiContainerSize);
00637
00638 }
00639 #endif
00640
00641
00642
00643 OSG_END_NAMESPACE
00644
00645 #include <OSGSFieldTypeDef.inl>
00646 #include <OSGMFieldTypeDef.inl>
00647
00648 OSG_BEGIN_NAMESPACE
00649
00650 #if !defined(OSG_DO_DOC) || defined(OSG_DOC_DEV)
00651 DataType FieldDataTraits<SimpleStatisticsForegroundPtr>::_type("SimpleStatisticsForegroundPtr", "StatisticsForegroundPtr");
00652 #endif
00653
00654 OSG_DLLEXPORT_SFIELD_DEF1(SimpleStatisticsForegroundPtr, OSG_SYSTEMLIB_DLLTMPLMAPPING);
00655 OSG_DLLEXPORT_MFIELD_DEF1(SimpleStatisticsForegroundPtr, OSG_SYSTEMLIB_DLLTMPLMAPPING);
00656
00657
00658
00659
00660
00661 #ifdef OSG_SGI_CC
00662 #pragma set woff 1174
00663 #endif
00664
00665 #ifdef OSG_LINUX_ICC
00666 #pragma warning( disable : 177 )
00667 #endif
00668
00669 namespace
00670 {
00671 static Char8 cvsid_cpp [] = "@(#)$Id: FCBaseTemplate_cpp.h,v 1.47 2006/03/17 17:03:19 pdaehne Exp $";
00672 static Char8 cvsid_hpp [] = OSGSIMPLESTATISTICSFOREGROUNDBASE_HEADER_CVSID;
00673 static Char8 cvsid_inl [] = OSGSIMPLESTATISTICSFOREGROUNDBASE_INLINE_CVSID;
00674
00675 static Char8 cvsid_fields_hpp[] = OSGSIMPLESTATISTICSFOREGROUNDFIELDS_HEADER_CVSID;
00676 }
00677
00678 OSG_END_NAMESPACE
00679