#include <OSGGroup.h>
Inheritance diagram for osg::Group:

Sync | |
| *void | executeSyncImpl (GroupBase *pOther, const BitVector &whichField) |
| virtual void | executeSync (FieldContainer &other, const BitVector &whichField) |
Public Types | |
| typedef GroupPtr | Ptr |
| enum | { ParentsFieldId = Inherited::NextFieldId, NextFieldId = ParentsFieldId + 1 } |
Public Member Functions | |
Sync | |
| *virtual void | changed (BitVector whichField, UInt32 origin) |
Dump | |
| *virtual void | dump (UInt32 uiIndent=0, const BitVector bvFlags=0) const |
FieldContainer Get | |
| *virtual FieldContainerType & | getType (void) |
| virtual const FieldContainerType & | getType (void) const |
| virtual UInt32 | getContainerSize (void) const |
Binary Access | |
| *virtual UInt32 | getBinSize (const BitVector &whichField) |
| virtual void | copyToBin (BinaryDataHandler &pMem, const BitVector &whichField) |
| virtual void | copyFromBin (BinaryDataHandler &pMem, const BitVector &whichField) |
Copy | |
| *virtual FieldContainerPtr | shallowCopy (void) const |
Static Public Member Functions | |
Class Get | |
| *static FieldContainerType & | getClassType (void) |
| access the type of the class | |
| static UInt32 | getClassTypeId (void) |
| access the numerical type of the class | |
Construction | |
| *static GroupPtr | create (void) |
| create a new instance of the class | |
| static GroupPtr | createEmpty (void) |
| create an empty new instance of the class, do not copy the prototype | |
Static Public Attributes | |
| static const osg::BitVector | MTInfluenceMask |
| static const BitVector | ParentsFieldMask = (1 << NodeCore::ParentsFieldId ) |
| static const BitVector | AttachmentsFieldMask |
| static const BitVector | NextFieldMask |
Protected Types | |
| typedef GroupBase | Inherited |
Protected Member Functions | |
Constructors | |
| * | Group (void) |
| Group (const Group &source) | |
Destructors | |
| *virtual | ~Group (void) |
Static Protected Attributes | |
Type information | |
| *static FieldDescription * | _desc [] |
Private Member Functions | |
| void | operator= (const Group &source) |
| prohibit default function (move to 'public' if needed) | |
Static Private Member Functions | |
Init | |
| *static void | initMethod (void) |
Friends | |
| class | FieldContainer |
| class | GroupBase |
Definition at line 56 of file OSGGroup.h.
|
|
Reimplemented from osg::GroupBase. Reimplemented in osg::Billboard, osg::BillboardBase, osg::ComponentTransform, osg::ComponentTransformBase, osg::DistanceLOD, osg::DistanceLODBase, osg::InverseTransform, osg::InverseTransformBase, osg::MaterialGroup, osg::MaterialGroupBase, osg::MaterialPool, osg::MaterialPoolBase, osg::ProxyGroup, osg::ProxyGroupBase, osg::Switch, osg::SwitchBase, osg::Transform, and osg::TransformBase. Definition at line 80 of file OSGGroup.h. |
|
|
Reimplemented in osg::BillboardBase, osg::ComponentTransformBase, osg::DistanceLODBase, osg::InverseTransformBase, osg::MaterialGroupBase, osg::MaterialPoolBase, osg::ProxyGroupBase, osg::SwitchBase, and osg::TransformBase. Definition at line 89 of file OSGGroupBase.h. |
|
|
Reimplemented from osg::AttachmentContainer. Definition at line 87 of file OSGNodeCore.h. 00088 { 00089 ParentsFieldId = Inherited::NextFieldId, 00090 NextFieldId = ParentsFieldId + 1 00091 };
|
|
|
Definition at line 80 of file OSGGroup.cpp. 00080 : 00081 Inherited() 00082 { 00083 }
|
|
|
Definition at line 85 of file OSGGroup.cpp. 00085 : 00086 Inherited(source) 00087 { 00088 }
|
|
|
Definition at line 93 of file OSGGroup.cpp.
|
|
||||||||||||
|
Reimplemented from osg::AttachmentContainer. Reimplemented in osg::Billboard, osg::ComponentTransform, osg::DistanceLOD, osg::InverseTransform, osg::MaterialGroup, osg::MaterialPool, osg::ProxyGroup, osg::Switch, and osg::Transform. Definition at line 63 of file OSGGroup.cpp. References osg::AttachmentContainer::changed(). Referenced by osg::Transform::changed(), osg::Switch::changed(), osg::ProxyGroup::changed(), osg::MaterialPool::changed(), osg::MaterialGroup::changed(), osg::InverseTransform::changed(), osg::DistanceLOD::changed(), and osg::Billboard::changed(). 00064 { 00065 Inherited::changed(whichField, origin); 00066 }
|
|
||||||||||||
|
Reimplemented from osg::NodeCore. Reimplemented in osg::Billboard, osg::ComponentTransform, osg::DistanceLOD, osg::InverseTransform, osg::MaterialGroup, osg::MaterialPool, osg::ProxyGroup, osg::Switch, and osg::Transform. Definition at line 71 of file OSGGroup.cpp. References osg::NodeCore::dump(). Referenced by osg::Transform::dump(), osg::MaterialPool::dump(), osg::MaterialGroup::dump(), osg::InverseTransform::dump(), and osg::Billboard::dump(). 00073 { 00074 Inherited::dump(uiIndent, bvFlags); 00075 }
|
|
|
Reimplemented in osg::Billboard, osg::InverseTransform, osg::MaterialGroup, and osg::Transform. Definition at line 100 of file OSGGroup.cpp. References osg::Action::Continue, osg::DrawActionBase::selectVisibles(), and osg::Action::Skip. Referenced by initMethod(). 00101 { 00102 DrawActionBase *da = dynamic_cast<DrawActionBase *>(action); 00103 00104 if(da->selectVisibles() == 0) 00105 return Action::Skip; 00106 00107 return Action::Continue; 00108 }
|
|
|
Reimplemented in osg::Billboard, osg::InverseTransform, osg::MaterialGroup, and osg::Transform. Definition at line 110 of file OSGGroup.cpp. References osg::Action::Continue. Referenced by initMethod(). 00111 { 00112 return Action::Continue; 00113 }
|
|
|
Reimplemented in osg::Billboard, osg::InverseTransform, osg::MaterialGroup, and osg::Transform. Definition at line 118 of file OSGGroup.cpp. References osg::Action::Continue, and osg::RenderAction::pushVisibility(). Referenced by initMethod(), and osg::MaterialGroup::renderEnter(). 00119 { 00120 RenderAction *ra = dynamic_cast<RenderAction *>(action); 00121 00122 ra->pushVisibility(); 00123 00124 return Action::Continue; 00125 }
|
|
|
Reimplemented in osg::Billboard, osg::InverseTransform, osg::MaterialGroup, and osg::Transform. Definition at line 127 of file OSGGroup.cpp. References osg::Action::Continue, and osg::RenderAction::popVisibility(). Referenced by initMethod(), and osg::MaterialGroup::renderLeave(). 00128 { 00129 RenderAction *ra = dynamic_cast<RenderAction *>(action); 00130 00131 ra->popVisibility(); 00132 00133 return Action::Continue; 00134 }
|
|
|
Reimplemented in osg::Switch. Definition at line 139 of file OSGGroup.cpp. References osg::Action::Continue, osg::Action::getActNode(), osg::IntersectAction::getLine(), osg::DynamicVolume::intersect(), osg::Volume::isValid(), and osg::Action::Skip. Referenced by initMethod(). 00140 { 00141 IntersectAction *ia = dynamic_cast<IntersectAction *>(action); 00142 const DynamicVolume &dv = ia->getActNode()->getVolume(); 00143 00144 if(dv.isValid() && ! dv.intersect(ia->getLine())) 00145 { 00146 return Action::Skip; //bv missed -> can not hit children 00147 } 00148 00149 return Action::Continue; 00150 }
|
|
|
|
|
|
|
Reimplemented from osg::NodeCore. Reimplemented in osg::BillboardBase, osg::ComponentTransformBase, osg::DistanceLODBase, osg::InverseTransformBase, osg::MaterialGroupBase, osg::MaterialPoolBase, osg::ProxyGroupBase, osg::SwitchBase, and osg::TransformBase. Definition at line 58 of file OSGGroupBase.inl. References osg::GroupBase::_type. Referenced by osg::GroupBase::create(), osg::VRMLWriteAction::initializeAction(), initMethod(), osg::SplitGraphOp::isGroup(), and osg::MergeGraphOp::isGroup(). 00059 { 00060 return _type; 00061 }
|
|
|
Reimplemented from osg::NodeCore. Reimplemented in osg::BillboardBase, osg::ComponentTransformBase, osg::DistanceLODBase, osg::InverseTransformBase, osg::MaterialGroupBase, osg::MaterialPoolBase, osg::ProxyGroupBase, osg::SwitchBase, and osg::TransformBase. Definition at line 65 of file OSGGroupBase.inl. References osg::GroupBase::_type, and osg::TypeBase::getId(). 00066 { 00067 return _type.getId(); 00068 }
|
|
|
Reimplemented from osg::NodeCore. Reimplemented in osg::BillboardBase, osg::ComponentTransformBase, osg::DistanceLODBase, osg::InverseTransformBase, osg::MaterialGroupBase, osg::MaterialPoolBase, osg::ProxyGroupBase, osg::SwitchBase, and osg::TransformBase. Definition at line 86 of file OSGGroupBase.cpp. References osg::GroupBase::_type. 00087 { 00088 return _type; 00089 }
|
|
|
Reimplemented from osg::NodeCore. Reimplemented in osg::BillboardBase, osg::ComponentTransformBase, osg::DistanceLODBase, osg::InverseTransformBase, osg::MaterialGroupBase, osg::MaterialPoolBase, osg::ProxyGroupBase, osg::SwitchBase, and osg::TransformBase. Definition at line 91 of file OSGGroupBase.cpp. References osg::GroupBase::_type. 00092 { 00093 return _type; 00094 }
|
|
|
Reimplemented from osg::NodeCore. Reimplemented in osg::BillboardBase, osg::ComponentTransformBase, osg::DistanceLODBase, osg::InverseTransformBase, osg::MaterialGroupBase, osg::MaterialPoolBase, osg::ProxyGroupBase, osg::SwitchBase, and osg::TransformBase. Definition at line 106 of file OSGGroupBase.cpp. 00107 { 00108 return sizeof(Group); 00109 }
|
|
|
Reimplemented from osg::NodeCore. Reimplemented in osg::BillboardBase, osg::ComponentTransformBase, osg::DistanceLODBase, osg::InverseTransformBase, osg::MaterialGroupBase, osg::MaterialPoolBase, osg::ProxyGroupBase, osg::SwitchBase, and osg::TransformBase. Definition at line 166 of file OSGGroupBase.cpp. References osg::NodeCore::getBinSize(). Referenced by osg::TransformBase::getBinSize(), osg::SwitchBase::getBinSize(), osg::ProxyGroupBase::getBinSize(), osg::MaterialPoolBase::getBinSize(), osg::MaterialGroupBase::getBinSize(), osg::InverseTransformBase::getBinSize(), osg::DistanceLODBase::getBinSize(), and osg::BillboardBase::getBinSize(). 00167 { 00168 UInt32 returnValue = Inherited::getBinSize(whichField); 00169 00170 00171 return returnValue; 00172 }
|
|
||||||||||||
|
Reimplemented from osg::NodeCore. Reimplemented in osg::BillboardBase, osg::ComponentTransformBase, osg::DistanceLODBase, osg::InverseTransformBase, osg::MaterialGroupBase, osg::MaterialPoolBase, osg::ProxyGroupBase, osg::SwitchBase, and osg::TransformBase. Definition at line 174 of file OSGGroupBase.cpp. References osg::NodeCore::copyToBin(). Referenced by osg::TransformBase::copyToBin(), osg::SwitchBase::copyToBin(), osg::ProxyGroupBase::copyToBin(), osg::MaterialPoolBase::copyToBin(), osg::MaterialGroupBase::copyToBin(), osg::InverseTransformBase::copyToBin(), osg::DistanceLODBase::copyToBin(), and osg::BillboardBase::copyToBin(). 00176 { 00177 Inherited::copyToBin(pMem, whichField); 00178 00179 00180 }
|
|
||||||||||||
|
Reimplemented from osg::NodeCore. Reimplemented in osg::BillboardBase, osg::ComponentTransformBase, osg::DistanceLODBase, osg::InverseTransformBase, osg::MaterialGroupBase, osg::MaterialPoolBase, osg::ProxyGroupBase, osg::SwitchBase, and osg::TransformBase. Definition at line 182 of file OSGGroupBase.cpp. References osg::NodeCore::copyFromBin(). Referenced by osg::TransformBase::copyFromBin(), osg::SwitchBase::copyFromBin(), osg::ProxyGroupBase::copyFromBin(), osg::MaterialPoolBase::copyFromBin(), osg::MaterialGroupBase::copyFromBin(), osg::InverseTransformBase::copyFromBin(), osg::DistanceLODBase::copyFromBin(), and osg::BillboardBase::copyFromBin(). 00184 { 00185 Inherited::copyFromBin(pMem, whichField); 00186 00187 00188 }
|
|
|
|
Reimplemented in osg::BillboardBase, osg::ComponentTransformBase, osg::DistanceLODBase, osg::InverseTransformBase, osg::MaterialGroupBase, osg::MaterialPoolBase, osg::ProxyGroupBase, osg::SwitchBase, and osg::TransformBase. Definition at line 87 of file OSGGroupBase.inl. References osg::FieldContainer::newPtr(). 00088 { 00089 GroupPtr returnValue; 00090 00091 newPtr(returnValue); 00092 00093 return returnValue; 00094 }
|
|
|
Implements osg::FieldContainer. Reimplemented in osg::BillboardBase, osg::ComponentTransformBase, osg::DistanceLODBase, osg::InverseTransformBase, osg::MaterialGroupBase, osg::MaterialPoolBase, osg::ProxyGroupBase, osg::SwitchBase, and osg::TransformBase. Definition at line 97 of file OSGGroupBase.cpp. References osg::FieldContainer::newPtr(). Referenced by osg::GroupBase::create(). 00098 { 00099 GroupPtr returnValue; 00100 00101 newPtr(returnValue, dynamic_cast<const Group *>(this)); 00102 00103 return returnValue; 00104 }
|
|
||||||||||||
|
Definition at line 191 of file OSGGroupBase.cpp. References osg::NodeCore::executeSyncImpl(). Referenced by osg::GroupBase::executeSync(), osg::TransformBase::executeSyncImpl(), osg::SwitchBase::executeSyncImpl(), osg::ProxyGroupBase::executeSyncImpl(), osg::MaterialPoolBase::executeSyncImpl(), osg::MaterialGroupBase::executeSyncImpl(), osg::InverseTransformBase::executeSyncImpl(), osg::DistanceLODBase::executeSyncImpl(), and osg::BillboardBase::executeSyncImpl(). 00193 { 00194 00195 Inherited::executeSyncImpl(pOther, whichField); 00196 00197 00198 }
|
|
||||||||||||
|
Definition at line 180 of file OSGNodeCore.inl. References osg::NodeCore::_parents, osg::AttachmentContainer::executeSyncImpl(), osg::FieldBits::NoField, osg::NodeCore::ParentsFieldMask, and osg::MField< FieldTypeT, fieldNameSpace >::syncWith(). Referenced by osg::NodeCore::executeSync(), osg::StateSortingGroupBase::executeSyncImpl(), osg::LightEnvBase::executeSyncImpl(), osg::LightBase::executeSyncImpl(), osg::InlineBase::executeSyncImpl(), osg::GroupBase::executeSyncImpl(), osg::DVRVolumeBase::executeSyncImpl(), and osg::DrawableBase::executeSyncImpl(). 00182 { 00183 Inherited::executeSyncImpl(pOther, whichField); 00184 00185 if(FieldBits::NoField != (ParentsFieldMask & whichField)) 00186 { 00187 _parents.syncWith(pOther->_parents); 00188 } 00189 }
|
|
||||||||||||
|
||||||||||||
|
Definition at line 333 of file OSGFieldContainerImpl.inl. Referenced by osg::StateBase::executeSyncImpl(), osg::DVRShaderBase::executeSyncImpl(), osg::DVRClipGeometryBase::executeSyncImpl(), osg::AttachmentContainer::executeSyncImpl(), and osg::Attachment::executeSyncImpl().
|
|
||||||||||||
|
Reimplemented from osg::NodeCore. Reimplemented in osg::BillboardBase, osg::ComponentTransformBase, osg::DistanceLODBase, osg::InverseTransformBase, osg::MaterialGroupBase, osg::MaterialPoolBase, osg::ProxyGroupBase, osg::SwitchBase, and osg::TransformBase. Definition at line 113 of file OSGGroupBase.cpp. References osg::GroupBase::executeSyncImpl(). 00115 { 00116 this->executeSyncImpl((GroupBase *) &other, whichField); 00117 }
|
|
|
Definition at line 56 of file OSGNodeCore.inl. Referenced by osg::Surface::FindClosestPoint(). 00057 { 00058 return _parents; 00059 }
|
|
|
Definition at line 62 of file OSGNodeCore.inl. References osg::NodeCore::_parents. 00063 { 00064 return _parents; 00065 }
|
|
|
Definition at line 68 of file OSGNodeCore.inl. References osg::NodeCore::_parents. 00069 { 00070 return &_parents; 00071 }
|
|
|
Definition at line 237 of file OSGNodeCore.inl. References osg::NodeCore::_parents, and osg::MField< FieldTypeT, fieldNameSpace >::size(). Referenced by osg::Transform::changed(). 00238 { 00239 for(UInt32 i = 0; i < _parents.size(); i++) 00240 { 00241 _parents[i]->invalidateVolume(); 00242 } 00243 }
|
|
|
Reimplemented from osg::FieldContainer. Reimplemented in osg::MaterialPool. Definition at line 142 of file OSGNodeCore.inl.
|
|
|
Definition at line 150 of file OSGNodeCore.inl. References osg::NodeCore::_parents, and osg::MField< FieldTypeT, fieldNameSpace >::push_back(). 00151 { 00152 _parents.push_back(parent); 00153 }
|
|
|
Definition at line 156 of file OSGNodeCore.inl. References osg::NodeCore::_parents, osg::MField< FieldTypeT, fieldNameSpace >::end(), osg::MField< FieldTypeT, fieldNameSpace >::erase(), and osg::MField< FieldTypeT, fieldNameSpace >::find(). 00157 { 00158 MFNodePtr::iterator parentIt = _parents.find(parent); 00159 00160 if(parentIt != _parents.end()) 00161 { 00162 _parents.erase(parentIt); 00163 } 00164 }
|
|
|
Reimplemented in osg::Geometry. Definition at line 170 of file OSGNodeCore.inl. Referenced by osg::MaterialPool::add(), osg::NodeCore::dump(), and osg::MaterialPool::sub().
|
|
|
Definition at line 352 of file OSGAttachmentContainer.cpp. Referenced by osg::AttachmentContainer::subAttachment(), and osg::AttachmentContainer::~AttachmentContainer(). 00353 { 00354 return AttachmentContainerPtr(*this); 00355 }
|
|
|
Reimplemented in osg::Billboard, osg::InverseTransform, and osg::Transform. Definition at line 224 of file OSGNodeCore.inl.
|
|
|
Reimplemented in osg::Geometry, osg::Slices, osg::Particles, osg::DVRVolume, osg::Surface, osg::Billboard, osg::InverseTransform, osg::ProxyGroup, and osg::Transform. Definition at line 232 of file OSGNodeCore.inl. Referenced by osg::Billboard::adjustVolume().
|
|
||||||||||||
|
Definition at line 84 of file OSGAttachmentContainer.cpp. References osg::addRefCP(), osg::beginEditCP(), osg::endEditCP(), osg::NullFC, and osg::subRefCP(). Re |