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) |
| 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) |
|
|
Helper macro to simplify using CPEditor Definition at line 803 of file OSGFieldContainerPtrImpl.h. |
|
|
Definition at line 60 of file OSGNodePtr.h. |
|
|
Definition at line 65 of file OSGFieldContainerTypeImpl.h. |
|
|
Definition at line 70 of file OSGFieldContainerTypeImpl.h. |
|
|
Definition at line 64 of file OSGFieldDescriptionImpl.h. |
|
|
Definition at line 69 of file OSGFieldDescriptionImpl.h. |
|
|
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(), osg::VerifyGraphOp::traverseEnter(), and osg::ShaderParameterAccess::updateMap(). 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 }
|
|
||||||||||||
|
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(), osg::VerifyGraphOp::repairGeometry(), osg::setName(), and osg::VerifyGraphOp::traverseEnter(). 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 }
|
|
||||||||||||
|
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, and osg::setName(). 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 }
|
|
|
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 }
|
|
||||||||||||
|
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. 00247 { 00248 if(container == NullFC) 00249 { 00250 FFATAL(("setVoidP: no container?!?\n")); 00251 return; 00252 } 00253 00254 // Get attachment pointer 00255 00256 VoidPAttachmentPtr pVoid = NullFC; 00257 AttachmentPtr att = 00258 container->findAttachment(VoidPAttachment::getClassType().getGroupId()); 00259 00260 if(att == NullFC) 00261 { 00262 pVoid = VoidPAttachment::create(); 00263 container->addAttachment(pVoid); 00264 } 00265 else 00266 { 00267 pVoid = VoidPAttachmentPtr::dcast(att); 00268 00269 if(pVoid == NullFC) 00270 { 00271 FFATAL(("setVoidP: VoidP Attachment is not castable " 00272 "to VoidPAttachment?!?\n")); 00273 return; 00274 } 00275 } 00276 00277 pVoid->getFieldPtr()->setValue(pData); 00278 }
|
|
||||||||||||
|
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 }
|
|
||||||||||||
|
Definition at line 369 of file OSGAttachment.cpp.
|
|
||||||||||||
|
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 }
|
|
||||||||||||
|
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 }
|
|
|
|
||||||||||||
|
Definition at line 141 of file OSGFieldContainerPtrFuncsImpl.inl. References osg::NullFC. Referenced by osg::State::addChunk(), osg::DVRVolume::setAppearance(), osg::DVRVolume::setGeometry(), osg::DVRVolumeTexture::setImage(), osg::Slices::setMaterial(), osg::Particles::setMaterial(), osg::MaterialDrawable::setMaterial(), osg::Geometry::setMaterial(), osg::FieldContainerType::setPrototype(), osg::DVRVolume::setRenderMaterial(), osg::DVRVolume::setShader(), and osg::DVRVolume::setTextureStorage(). 00143 { 00144 if(objectP != newObjectP) 00145 { 00146 if(objectP != NullFC) 00147 objectP.subRef(); 00148 00149 objectP = newObjectP; 00150 00151 if(objectP != NullFC) 00152 objectP.addRef(); 00153 } 00154 }
|
|
|
Definition at line 111 of file OSGFieldContainerPtrFuncsImpl.inl. References osg::NullFC.
|
|
||||||||||||||||
|
Definition at line 190 of file OSGFieldContainerPtrFuncsImpl.inl. References osg::NullFC. 00193 { 00194 if(objectP != NullFC) 00195 objectP.beginEdit(whichField, origin); 00196 }
|
|
||||||||||||||||
|
Definition at line 199 of file OSGFieldContainerPtrFuncsImpl.inl. References osg::NullFC. 00202 { 00203 if(objectP != NullFC) 00204 objectP.endEdit(whichField, origin); 00205 }
|
|
||||||||||||||||
|
Definition at line 208 of file OSGFieldContainerPtrFuncsImpl.inl. References osg::NullFC. Referenced by osg::RemoteAspect::receiveSync(). 00211 { 00212 if(objectP != NullFC) 00213 objectP.changed(whichField, origin); 00214 }
|
|
||||||||||||||||
|
Definition at line 217 of file OSGFieldContainerPtrFuncsImpl.inl. References osg::NullFC. 00220 { 00221 if(objectP != NullFC) 00222 objectP.endEditNotChanged(whichField, origin); 00223 }
|
|
||||||||||||
|
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 }
|
|
|
Definition at line 682 of file OSGNode.cpp. References osg::beginEditCP(), osg::endEditCP(), osg::NodePtr::getCore(), and osg::NullFC. Referenced by osg::Node::clone(), and osg::VRMLFile::use(). 00683 { 00684 NodePtr returnValue = NullFC; 00685 00686 if(pRootNode != NullFC) 00687 { 00688 NodePtr pChildClone = NullFC; 00689 00690 returnValue = Node::create(); 00691 00692 beginEditCP(returnValue); 00693 { 00694 returnValue->setTravMask(pRootNode->getTravMask()); 00695 returnValue->setCore (pRootNode->getCore()); 00696 00697 for(UInt32 i = 0; i < pRootNode->getNChildren(); i++) 00698 { 00699 pChildClone = cloneTree(pRootNode->getChild(i)); 00700 00701 returnValue->addChild(pChildClone); 00702 } 00703 } 00704 endEditCP (returnValue); 00705 } 00706 00707 return returnValue; 00708 }
|
|
||||||||||||
|
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 }
|
|
|
Definition at line 124 of file OSGNodePtr.cpp. References osg::beginEditCP(), and osg::endEditCP(). Referenced by osg::calcVertexNormalsGeo(). 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 }
|
1.4.3