Field Container Functions
[OpenSG System Library]


Classes

class  osg::CPEditor
struct  osg::FieldDescriptionPLT

Defines

#define CPEdit(fc, mask)   ::OSG::CPEditor CPEdit_##fc((fc),(mask))

Typedefs

typedef RefPtr< NodePtr > osg::NodeRefPtr
typedef void(* osg::InitContainerF )(void)
typedef FieldContainerPtr(* osg::PrototypeCreateF )(void)
typedef Field *(FieldContainer::* osg::FieldAccessMethod )(void)
typedef Field *(FieldContainer::* osg::FieldIndexAccessMethod )(UInt32)

Functions

const Char8 * osg::getName (AttachmentContainerPtr container)
void osg::setName (AttachmentContainerPtr container, const std::string &namestring)
void osg::setName (AttachmentContainerPtr container, const Char8 *name)
void * osg::getVoidP (AttachmentContainerPtr container)
void osg::setVoidP (AttachmentContainerPtr container, void *pData, bool internal)
std::ostream & osg::operator<< (std::ostream &os, const AttachmentContainerPtr &fc)
std::ostream & osg::operator<< (std::ostream &stream, const AttachmentMap &amap)
std::ostream & osg::operator<< (std::ostream &os, const AttachmentPtr &fc)
std::ostream & osg::operator<< (std::ostream &os, const CNodePtr &fc)
void osg::addRefCP (const FieldContainerPtrBase &objectP)
void osg::subRefCP (const FieldContainerPtrBase &objectP)
void osg::setRefdCP (FieldContainerPtrBase &objectP, const FieldContainerPtrBase &newObjectP)
void osg::clearRefCP (FieldContainerPtrBase &objectP)
void osg::beginEditCP (const FieldContainerPtr &objectP, BitVector whichField=FieldBits::AllFields, UInt32 origin=ChangedOrigin::External)
void osg::endEditCP (const FieldContainerPtr &objectP, BitVector whichField=FieldBits::AllFields, UInt32 origin=ChangedOrigin::External)
void osg::changedCP (const FieldContainerPtr &objectP, BitVector whichField=FieldBits::AllFields, UInt32 origin=ChangedOrigin::External)
void osg::endEditNotChangedCP (const FieldContainerPtr &objectP, BitVector whichField=FieldBits::AllFields, UInt32 origin=ChangedOrigin::External)
std::ostream & osg::operator<< (std::ostream &os, const FieldContainerPtr &fc)
NodePtr osg::cloneTree (const NodePtr &pRootNode)
std::ostream & osg::operator<< (std::ostream &os, const NodePtr &fc)
NodePtr osg::makeNodeFor (NodeCorePtr core)

Define Documentation

#define CPEdit ( fc,
mask   )     ::OSG::CPEditor CPEdit_##fc((fc),(mask))

Helper macro to simplify using CPEditor

Definition at line 807 of file OSGFieldContainerPtrImpl.h.


Typedef Documentation

typedef RefPtr<NodePtr> osg::NodeRefPtr

Definition at line 60 of file OSGNodePtr.h.

typedef void(* osg::InitContainerF)(void)

Definition at line 65 of file OSGFieldContainerTypeImpl.h.

typedef FieldContainerPtr(* osg::PrototypeCreateF)(void)

Definition at line 70 of file OSGFieldContainerTypeImpl.h.

typedef Field*(FieldContainer::* osg::FieldAccessMethod)(void)

Definition at line 64 of file OSGFieldDescriptionImpl.h.

typedef Field*(FieldContainer::* osg::FieldIndexAccessMethod)(UInt32)

Definition at line 69 of file OSGFieldDescriptionImpl.h.


Function Documentation

const Char8 * osg::getName ( AttachmentContainerPtr  container  ) 

Return the name attached to the container, NULL if none attached or container is NULL.

Definition at line 116 of file OSGSimpleAttachments.cpp.

References osg::NullFC.

Referenced by osg::State::dump(), osg::GraphOp::isInExcludeList(), osg::QSceneGraphView::onSelectionChanged(), osg::QFCItem::QFCItem(), osg::QNodeCoreItem::QNodeCoreItem(), osg::VerifyGraphOp::repairGeometry(), and osg::VerifyGraphOp::traverseEnter().

00117 {
00118     if(container == NullFC)
00119         return NULL;
00120    
00121     // Get attachment pointer
00122     AttachmentPtr att = 
00123         container->findAttachment(Name::getClassType().getGroupId());
00124 
00125     if(att == NullFC)
00126         return NULL;
00127    
00128     // Cast to name pointer                           
00129 
00130     NamePtr name = NamePtr::dcast(att);
00131 
00132     if(name == NullFC)
00133         return NULL;
00134    
00135     return name->getFieldPtr()->getValue().c_str();
00136 }

void osg::setName ( AttachmentContainerPtr  container,
const std::string &  namestring 
)

Set the name attached to the container. If the container doesn't have a name attachement yet one is created.

Definition at line 142 of file OSGSimpleAttachments.cpp.

References osg::beginEditCP(), osg::endEditCP(), FFATAL, and osg::NullFC.

Referenced by osg::OSGLoader::beginNode().

00144 {
00145     if(container == NullFC)
00146     {
00147         FFATAL(("setName: no container?!?\n"));
00148         return;
00149     }
00150    
00151     // Get attachment pointer
00152 
00153     NamePtr       name = NullFC;
00154     AttachmentPtr att  = 
00155         container->findAttachment(Name::getClassType().getGroupId());
00156     
00157     if(att == NullFC)
00158     {
00159         name = Name::create();
00160         beginEditCP(container, AttachmentContainer::AttachmentsFieldMask);
00161         {
00162             container->addAttachment(name);
00163         }
00164         endEditCP(container, AttachmentContainer::AttachmentsFieldMask);
00165     }
00166     else
00167     {   
00168         name = NamePtr::dcast(att);
00169 
00170         if(name == NullFC)
00171         {
00172             FFATAL(("setName: Name Attachment is not castable to Name?!?\n"));
00173             return;
00174         }
00175     }
00176     
00177   
00178     beginEditCP(name);
00179     {
00180         name->getFieldPtr()->getValue().assign(namestring);   
00181     }
00182     endEditCP(name);
00183 }

void osg::setName ( AttachmentContainerPtr  container,
const Char8 *  name 
)

Set the name attached to the container. If the container doesn't have name attachement yet one is created. If the name is NULL, an attached name is removed.

Definition at line 191 of file OSGSimpleAttachments.cpp.

References osg::NullFC.

Referenced by osg::VerifyGraphOp::repairGeometry(), and osg::VerifyGraphOp::traverseEnter().

00192 {
00193     if(name == NULL)
00194     {
00195         AttachmentPtr att = 
00196             container->findAttachment(Name::getClassType().getGroupId());
00197  
00198         if(att != NullFC)
00199         {
00200             container->subAttachment(att);
00201         }       
00202     }
00203     else
00204     {
00205         setName(container, std::string(name));
00206     }
00207 }

void * osg::getVoidP ( AttachmentContainerPtr  container  ) 

Return the void * attached to the container, NULL if none attached or container is NULL.

Definition at line 218 of file OSGSimpleAttachments.cpp.

References osg::NullFC.

00219 {
00220     if(container == NullFC)
00221         return NULL;
00222    
00223     // Get attachment pointer
00224     AttachmentPtr att = 
00225        container->findAttachment(VoidPAttachment::getClassType().getGroupId());
00226 
00227     if(att == NullFC)
00228         return NULL;
00229    
00230     // Cast to name pointer                           
00231 
00232     VoidPAttachmentPtr pVoid = VoidPAttachmentPtr::dcast(att);
00233 
00234     if(pVoid == NullFC)
00235         return NULL;
00236    
00237     return pVoid->getFieldPtr()->getValue();
00238 }

void osg::setVoidP ( AttachmentContainerPtr  container,
void *  pData,
bool  internal 
)

Set the void * attached to the container. If the container doesn't have a VoidP attachement yet one is created.

Definition at line 245 of file OSGSimpleAttachments.cpp.

References FFATAL, and osg::NullFC.

00248 {
00249     if(container == NullFC)
00250     {
00251         FFATAL(("setVoidP: no container?!?\n"));
00252         return;
00253     }
00254    
00255     // Get attachment pointer
00256 
00257     VoidPAttachmentPtr  pVoid = NullFC;
00258     AttachmentPtr       att   = 
00259        container->findAttachment(VoidPAttachment::getClassType().getGroupId());
00260     
00261     if(att == NullFC)
00262     {
00263         pVoid = VoidPAttachment::create();
00264         container->addAttachment(pVoid);
00265     }
00266     else
00267     {   
00268         pVoid = VoidPAttachmentPtr::dcast(att);
00269 
00270         if(pVoid == NullFC)
00271         {
00272             FFATAL(("setVoidP: VoidP Attachment is not castable "
00273                     "to VoidPAttachment?!?\n"));
00274             return;
00275         }
00276     }
00277   
00278     pVoid->setInternal(internal);
00279     pVoid->getFieldPtr()->setValue(pData);
00280 }

std::ostream & osg::operator<< ( std::ostream &  os,
const AttachmentContainerPtr fc 
)

Definition at line 85 of file OSGAttachmentContainerPtr.cpp.

References osg::NullFC.

00087 {
00088     if(fc == NullFC)
00089     {
00090         os << std::hex << "NodePtr 0x" << &fc << std::dec << ":NullFC";
00091     }
00092     else
00093     {
00094         os << std::hex 
00095            << "NodePtr 0x"
00096            << &fc 
00097            << std::dec
00098            << ":" 
00099            << fc->getType().getName() 
00100            << "Ptr(0x"
00101            << std::hex
00102            << (&(*fc))
00103            << std::dec
00104            << ")";
00105     }
00106 
00107     return os;
00108 }

std::ostream & osg::operator<< ( std::ostream &  stream,
const AttachmentMap &  amap 
)

Definition at line 369 of file OSGAttachment.cpp.

00371 {
00372     stream << "Attachment << NI" << std::endl;
00373 
00374     return stream;
00375 }

std::ostream & osg::operator<< ( std::ostream &  os,
const AttachmentPtr fc 
)

Definition at line 79 of file OSGAttachmentPtr.cpp.

References osg::NullFC.

00081 {
00082     if(fc == NullFC)
00083     {
00084         os << std::hex << "NodePtr 0x" << &fc << std::dec << ":NullFC";
00085     }
00086     else
00087     {
00088         os << std::hex 
00089            << "NodePtr 0x"
00090            << &fc 
00091            << std::dec << ":" 
00092            << fc->getType().getName() 
00093            << "Ptr(0x"
00094            << std::hex
00095            << (&(*fc)) 
00096            << std::dec
00097            << ")";
00098     }
00099 
00100     return os;
00101 }

std::ostream & osg::operator<< ( std::ostream &  os,
const CNodePtr fc 
)

Definition at line 96 of file OSGNodePtr.cpp.

References osg::NullFC.

00098 {
00099     if(fc == NullFC)
00100     {
00101         os << std::hex << "NodePtr 0x" << &fc << std::dec << ":NullFC";
00102     }
00103     else
00104     {
00105         os << std::hex
00106            << "NodePtr 0x"
00107            << &fc
00108            << std::dec
00109            << ":" << fc->getType().getName()
00110            << "Ptr(0x"
00111            << std::hex
00112            << (&(*fc)) 
00113            << std::dec
00114            << ")";
00115     }
00116 
00117     return os;
00118 }

void osg::addRefCP ( const FieldContainerPtrBase &  objectP  )  [inline]

Definition at line 57 of file OSGFieldContainerPtrFuncsImpl.inl.

References osg::FieldContainerPtrBase::addRef(), and osg::NullFC.

Referenced by osg::DVRSimpleLUTShader::activate(), osg::DVRIsoShader::activate_FragmentProgramShading(), osg::MaterialPool::add(), osg::DVRClipObjects::add(), osg::AttachmentContainer::addAttachment(), osg::Node::addChild(), osg::ChunkMaterial::addChunk(), osg::Viewport::addForeground(), osg::SwitchMaterial::addMaterial(), osg::MultiPassMaterial::addMaterial(), osg::ChangeList::apply(), osg::ChangeList::applyTo(), osg::ScanParseSkel::beginImage(), osg::TextureChunk::changed(), osg::SwitchMaterial::changed(), osg::Surface::changed(), osg::Slices::changed(), osg::Particles::changed(), osg::Node::changed(), osg::MultiPassMaterial::changed(), osg::MaterialPool::changed(), osg::MaterialGroup::changed(), osg::Geometry::changed(), osg::FresnelMaterial::changed(), osg::DVRVolumeTexture::changed(), osg::CubeTextureChunk::changed(), osg::ChunkMaterial::changed(), osg::AttachmentContainer::changed(), osg::SharePtrGraphOp::compareFCs(), osg::Image::convertDataTypeTo(), osg::DisplayCalibration::createCMViewports(), osg::Image::createMipmap(), osg::deepClone(), osg::DisplayFilterForeground::DisplayFilterGroup::DisplayFilterGroup(), osg::ProxyGroup::draw(), osg::ChunkMaterial::draw(), osg::VRMLMaterialDesc::endProtoInterface(), osg::FieldContainerType::FieldContainerType(), osg::getDefaultMaterial(), osg::getDefaultUnlitMaterial(), osg::GraphicStatisticsForeground::GraphicStatisticsForeground(), osg::SimpleSceneManager::highlightChanged(), osg::VRMLAppearanceDesc::init(), osg::DVRSimpleLUTShader::initDependentTexture(), osg::SimpleSceneManager::initialize(), osg::DVRIsoShader::initialize(), osg::FieldContainerType::initPrototype(), osg::SimpleStatisticsForeground::initText(), osg::GraphicStatisticsForeground::initText(), osg::Node::insertChild(), osg::ClusterWindow::loadCalibration(), osg::ClusterWindow::loadFilter(), osg::SimpleTexturedMaterial::prepareLocalChunks(), osg::SimpleMaterial::prepareLocalChunks(), osg::PhongMaterial::prepareLocalChunks(), osg::FresnelMaterial::prepareLocalChunks(), osg::TextTXFFace::prepareTexture(), osg::SimpleMaterial::rebuildState(), osg::PhongMaterial::rebuildState(), osg::FresnelMaterial::rebuildState(), osg::ChunkMaterial::rebuildState(), osg::RemoteAspect::receiveSync(), osg::Image::reformat(), osg::RefPtr< Ref >::RefPtr(), osg::Node::replaceChild(), osg::Node::replaceChildBy(), osg::SimpleSceneManager::setCamera(), osg::Particles::setColors(), osg::Geometry::setColors(), osg::Surface::setControlPoints(), osg::Node::setCore(), osg::CoredNodePtr< Core >::setCore(), osg::TextureChunk::setImage(), osg::FresnelMaterial::setImage(), osg::Geometry::setIndices(), osg::Geometry::setLengths(), osg::MaterialGroup::setMaterial(), osg::CubeTextureChunk::setNegXImage(), osg::CubeTextureChunk::setNegYImage(), osg::CoredNodePtrBase::setNode(), osg::Particles::setNormals(), osg::Geometry::setNormals(), osg::Particles::setPositions(), osg::Geometry::setPositions(), osg::CubeTextureChunk::setPosXImage(), osg::CubeTextureChunk::setPosYImage(), osg::CubeTextureChunk::setPosZImage(), osg::RefPtr< Ref >::setRef(), osg::Geometry::setSecondaryColors(), osg::Particles::setSecPositions(), osg::Geometry::setTexCoords(), osg::Geometry::setTexCoords1(), osg::Geometry::setTexCoords2(), osg::Geometry::setTexCoords3(), osg::Geometry::setTexCoords4(), osg::Geometry::setTexCoords5(), osg::Geometry::setTexCoords6(), osg::Geometry::setTexCoords7(), osg::Surface::setTextureControlPoints(), osg::Geometry::setTypes(), osg::SimpleStatisticsForeground::SimpleStatisticsForeground(), osg::Image::slice(), osg::Image::subImage(), osg::TextureRecord::TextureRecord(), and osg::SplitGraphOp::traverseLeave().

00058 {
00059     if(objectP != NullFC)
00060         objectP.addRef();
00061 }

void osg::subRefCP ( const FieldContainerPtrBase &  objectP  )  [inline]

Definition at line 84 of file OSGFieldContainerPtrFuncsImpl.inl.

References osg::NullFC, and osg::FieldContainerPtrBase::subRef().

Referenced by osg::AttachmentContainer::addAttachment(), osg::addRef(), osg::ChangeList::apply(), osg::ChangeList::applyTo(), osg::DVRIsoShader::cleanup(), osg::MaterialPool::clear(), osg::ChunkMaterial::clearChunks(), osg::Viewport::clearForegrounds(), osg::Window::clearPorts(), osg::MultiDisplayWindow::clientInit(), osg::SharePtrGraphOp::compareFCs(), osg::Image::convertDataTypeTo(), osg::DisplayCalibration::createCMViewports(), osg::createComposedImage(), osg::Image::createMipmap(), osg::createNormalVolume(), osg::DVRSimpleLUTShader::destroyDependentTexture(), osg::ProxyGroup::draw(), osg::ChunkMaterial::draw(), osg::ScanParseSkel::endImage(), osg::VRMLFile::handleError(), osg::DVRIsoShader::initialize(), osg::SimpleStatisticsForeground::initText(), osg::GraphicStatisticsForeground::initText(), osg::TextureChunk::onDestroy(), osg::Surface::onDestroy(), osg::MaterialPool::onDestroy(), osg::Geometry::onDestroy(), osg::CubeTextureChunk::onDestroy(), osg::ClearSlot::operator()(), osg::ImageFileHandler::read(), osg::RemoteAspect::receiveSync(), osg::Image::reformat(), osg::DVRClipObjects::remove(), osg::FBOViewport::render(), osg::RenderAction::RenderAction(), osg::Node::replaceChild(), osg::Node::replaceChildBy(), osg::SortFirstWindow::serverRender(), osg::MultiDisplayWindow::serverRender(), osg::SimpleSceneManager::setCamera(), osg::Particles::setColors(), osg::Geometry::setColors(), osg::Surface::setControlPoints(), osg::Node::setCore(), osg::CoredNodePtr< Core >::setCore(), osg::TextureChunk::setImage(), osg::FresnelMaterial::setImage(), osg::Geometry::setIndices(), osg::Geometry::setLengths(), osg::MaterialGroup::setMaterial(), osg::CubeTextureChunk::setNegXImage(), osg::CubeTextureChunk::setNegYImage(), osg::CoredNodePtrBase::setNode(), osg::Particles::setNormals(), osg::Geometry::setNormals(), osg::Particles::setPositions(), osg::Geometry::setPositions(), osg::CubeTextureChunk::setPosXImage(), osg::CubeTextureChunk::setPosYImage(), osg::CubeTextureChunk::setPosZImage(), osg::RefPtr< Ref >::setRef(), osg::Geometry::setSecondaryColors(), osg::Particles::setSecPositions(), osg::Geometry::setTexCoords(), osg::Geometry::setTexCoords1(), osg::Geometry::setTexCoords2(), osg::Geometry::setTexCoords3(), osg::Geometry::setTexCoords4(), osg::Geometry::setTexCoords5(), osg::Geometry::setTexCoords6(), osg::Geometry::setTexCoords7(), osg::Surface::setTextureControlPoints(), osg::Geometry::setTypes(), osg::Image::slice(), osg::MaterialPool::sub(), osg::AttachmentContainer::subAttachment(), osg::Node::subChild(), osg::State::subChunk(), osg::ChunkMaterial::subChunk(), osg::Image::subImage(), osg::SwitchMaterial::subMaterial(), osg::MultiPassMaterial::subMaterial(), osg::subRef(), osg::FieldContainerType::terminate(), osg::VRMLWriteAction::writeMaterial(), osg::AttachmentContainer::~AttachmentContainer(), osg::ClipPlane::~ClipPlane(), osg::DisplayCalibration::~DisplayCalibration(), osg::DisplayFilterForeground::DisplayFilterGroup::~DisplayFilterGroup(), osg::DVRIsoShader::~DVRIsoShader(), osg::DVRSimpleLUTShader::~DVRSimpleLUTShader(), osg::DVRVolume::~DVRVolume(), osg::FresnelMaterial::~FresnelMaterial(), osg::GraphicStatisticsForeground::~GraphicStatisticsForeground(), osg::Light::~Light(), osg::Material::~Material(), osg::MaterialGroup::~MaterialGroup(), osg::MultiPassMaterial::~MultiPassMaterial(), osg::Node::~Node(), osg::Particles::~Particles(), osg::PhongMaterial::~PhongMaterial(), osg::ProxyGroup::~ProxyGroup(), osg::RefPtr< Ref >::~RefPtr(), osg::RemoteAspect::~RemoteAspect(), osg::ScanParseSkel::~ScanParseSkel(), osg::SimpleMaterial::~SimpleMaterial(), osg::SimpleSceneManager::~SimpleSceneManager(), osg::SimpleStatisticsForeground::~SimpleStatisticsForeground(), osg::SimpleTexturedMaterial::~SimpleTexturedMaterial(), osg::Slices::~Slices(), osg::SwitchMaterial::~SwitchMaterial(), osg::TextTXFFace::~TextTXFFace(), osg::TextureRecord::~TextureRecord(), and osg::VRMLMaterialDesc::~VRMLMaterialDesc().

00085 {
00086     if(objectP != NullFC)
00087         objectP.subRef();
00088 }

void osg::setRefdCP ( FieldContainerPtrBase &  objectP,
const FieldContainerPtrBase &  newObjectP 
) [inline]

void osg::clearRefCP ( FieldContainerPtrBase &  objectP  )  [inline]

Definition at line 111 of file OSGFieldContainerPtrFuncsImpl.inl.

References osg::NullFC, and osg::FieldContainerPtrBase::subRef().

00112 {
00113     if(objectP != NullFC)
00114         objectP.subRef();
00115 
00116     objectP = NullFC;
00117 }

void osg::beginEditCP ( const FieldContainerPtr &  objectP,
BitVector  whichField = FieldBits ::AllFields,
UInt32  origin = ChangedOrigin::External 
) [inline]

void osg::endEditCP ( const FieldContainerPtr &  objectP,
BitVector  whichField = FieldBits ::AllFields,
UInt32  origin = ChangedOrigin::External 
) [inline]

void osg::changedCP ( const FieldContainerPtr &  objectP,
BitVector  whichField = FieldBits ::AllFields,
UInt32  origin = ChangedOrigin::External 
) [inline]

Definition at line 208 of file OSGFieldContainerPtrFuncsImpl.inl.

References osg::FieldContainerPtr::changed(), and osg::NullFC.

Referenced by osg::RemoteAspect::receiveSync().

00211 {
00212     if(objectP != NullFC)
00213         objectP.changed(whichField, origin);
00214 }

void osg::endEditNotChangedCP ( const FieldContainerPtr &  objectP,
BitVector  whichField = FieldBits ::AllFields,
UInt32  origin = ChangedOrigin::External 
) [inline]

Definition at line 217 of file OSGFieldContainerPtrFuncsImpl.inl.

References osg::FieldContainerPtr::endEditNotChanged(), and osg::NullFC.

00220 {
00221     if(objectP != NullFC)
00222         objectP.endEditNotChanged(whichField, origin);
00223 }

std::ostream & osg::operator<< ( std::ostream &  os,
const FieldContainerPtr fc 
)

Definition at line 156 of file OSGFieldContainerPtr.cpp.

00158 {
00159     if(fc == NullFC)
00160     {
00161         os << std::hex 
00162            << "FieldContainerPtr 0x" 
00163            << &fc 
00164            << std::dec 
00165            << ":NullFC";
00166     }
00167     else
00168     {
00169         os << std::hex << "FieldContainerPtr 0x"
00170            << &fc << std::dec << ":" << fc->getType().getName() << "Ptr(0x"
00171            << std::hex << (&(*fc)) << std::dec << ")";
00172     }
00173 
00174     return os;
00175 }

NodePtr osg::cloneTree ( const NodePtr pRootNode  ) 

Definition at line 689 of file OSGNode.cpp.

References osg::beginEditCP(), osg::Node::create(), osg::endEditCP(), osg::NodePtr::getCore(), and osg::NullFC.

Referenced by osg::Node::clone(), and osg::VRMLFile::use().

00690 {
00691     NodePtr returnValue = NullFC;
00692 
00693     if(pRootNode != NullFC)
00694     {
00695         NodePtr pChildClone = NullFC;
00696 
00697         returnValue = Node::create();
00698 
00699         beginEditCP(returnValue);
00700         {
00701             returnValue->setTravMask(pRootNode->getTravMask());
00702             returnValue->setCore    (pRootNode->getCore());
00703 
00704             for(UInt32 i = 0; i < pRootNode->getNChildren(); i++)
00705             {
00706                 pChildClone = cloneTree(pRootNode->getChild(i));
00707 
00708                 returnValue->addChild(pChildClone);
00709             }
00710         }
00711         endEditCP  (returnValue);
00712     }
00713 
00714     return returnValue;
00715 }

std::ostream & osg::operator<< ( std::ostream &  os,
const NodePtr fc 
)

Definition at line 68 of file OSGNodePtr.cpp.

References osg::NullFC.

00070 {
00071     if(fc == NullFC)
00072     {
00073         os << std::hex << "NodePtr 0x" << &fc << std::dec << ":NullFC";
00074     }
00075     else
00076     {
00077         os << std::hex
00078            << "NodePtr 0x"
00079            << &fc 
00080            << std::dec
00081            << ":" 
00082            << fc->getType().getName() 
00083            << "Ptr(0x"
00084            << std::hex 
00085            << (&(*fc))
00086            << std::dec
00087            << ")";
00088     }
00089 
00090     return os;
00091 }

NodePtr osg::makeNodeFor ( NodeCorePtr  core  ) 

Definition at line 124 of file OSGNodePtr.cpp.

References osg::beginEditCP(), osg::Node::CoreFieldMask, osg::Node::create(), and osg::endEditCP().

Referenced by osg::calcVertexNormalsGeo(), and osg::SplitGraphOp::traverse().

00125 {
00126     NodePtr n = Node::create();
00127     
00128     beginEditCP(n, Node::CoreFieldMask);
00129     
00130     n->setCore(core);
00131     
00132     endEditCP(n, Node::CoreFieldMask);
00133     
00134     return n;
00135 }


Generated on Mon Mar 17 12:02:56 2008 for OpenSG by  doxygen 1.5.5