#include <OSGShearedStereoCameraDecoratorBase.h>

Public Types | |
| enum | { ZeroParallaxDistanceFieldId = Inherited::NextFieldId, OverlapFieldId = ZeroParallaxDistanceFieldId + 1, NextFieldId = OverlapFieldId + 1 } |
| typedef ShearedStereoCameraDecoratorPtr | Ptr |
| enum | { LeftEyeFieldId = Inherited::NextFieldId, EyeSeparationFieldId = LeftEyeFieldId + 1, NextFieldId = EyeSeparationFieldId + 1 } |
| enum | { DecorateeFieldId = Inherited::NextFieldId, NextFieldId = DecorateeFieldId + 1 } |
| enum | { BeaconFieldId = Inherited::NextFieldId, NearFieldId = BeaconFieldId + 1, FarFieldId = NearFieldId + 1, NextFieldId = FarFieldId + 1 } |
| enum | { AttachmentsFieldId = Inherited::NextFieldId, NextFieldId = AttachmentsFieldId + 1 } |
| enum | { NextFieldId = 1 } |
Public Member Functions | |
FieldContainer Get | |
| virtual FieldContainerType & | getType (void) |
| virtual const FieldContainerType & | getType (void) const |
| virtual UInt32 | getContainerSize (void) const |
Field Get | |
| SFReal32 * | getSFZeroParallaxDistance (void) |
| Get the ShearedStereoCameraDecorator::_sfZeroParallaxDistance field. | |
| SFReal32 * | getSFOverlap (void) |
| Get the ShearedStereoCameraDecorator::_sfOverlap field. | |
| Real32 & | getZeroParallaxDistance (void) |
| Get the value of the ShearedStereoCameraDecorator::_sfZeroParallaxDistance field. | |
| const Real32 & | getZeroParallaxDistance (void) const |
| Get the value of the ShearedStereoCameraDecorator::_sfZeroParallaxDistance field. | |
| Real32 & | getOverlap (void) |
| Get the value of the ShearedStereoCameraDecorator::_sfOverlap field. | |
| const Real32 & | getOverlap (void) const |
| Get the value of the ShearedStereoCameraDecorator::_sfOverlap field. | |
Field Set | |
| void | setZeroParallaxDistance (const Real32 &value) |
| Set the value of the ShearedStereoCameraDecorator::_sfZeroParallaxDistance field. | |
| void | setOverlap (const Real32 &value) |
| Set the value of the ShearedStereoCameraDecorator::_sfOverlap field. | |
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 |
Sync | |
| virtual void | changed (BitVector whichField, UInt32 origin) |
Output | |
| virtual void | dump (UInt32 uiIndent=0, const BitVector bvFlags=0) const |
Field Get | |
| SFBool * | getSFLeftEye (void) |
| Get the StereoCameraDecorator::_sfLeftEye field. | |
| SFReal32 * | getSFEyeSeparation (void) |
| Get the StereoCameraDecorator::_sfEyeSeparation field. | |
| bool & | getLeftEye (void) |
| Get the value of the StereoCameraDecorator::_sfLeftEye field. | |
| const bool & | getLeftEye (void) const |
| Get the value of the StereoCameraDecorator::_sfLeftEye field. | |
| Real32 & | getEyeSeparation (void) |
| Get the value of the StereoCameraDecorator::_sfEyeSeparation field. | |
| const Real32 & | getEyeSeparation (void) const |
| Get the value of the StereoCameraDecorator::_sfEyeSeparation field. | |
Field Set | |
| void | setLeftEye (const bool &value) |
| Set the value of the StereoCameraDecorator::_sfLeftEye field. | |
| void | setEyeSeparation (const Real32 &value) |
| Set the value of the StereoCameraDecorator::_sfEyeSeparation field. | |
your_category | |
| virtual void | draw (DrawAction *action, const Viewport &port) |
| virtual void | getProjection (Matrix &result, UInt32 width, UInt32 height) |
| virtual void | getProjectionTranslation (Matrix &result, UInt32 width, UInt32 height) |
| virtual void | getViewing (Matrix &result, UInt32 width, UInt32 height) |
Field Get | |
| SFCameraPtr * | getSFDecoratee (void) |
| SFNodePtr * | getSFBeacon (void) |
| SFReal32 * | getSFNear (void) |
| SFReal32 * | getSFFar (void) |
| CameraPtr & | getDecoratee (void) |
| const CameraPtr & | getDecoratee (void) const |
| NodePtr & | getBeacon (void) |
| const NodePtr & | getBeacon (void) const |
| Real32 & | getNear (void) |
| const Real32 & | getNear (void) const |
| Real32 & | getFar (void) |
| const Real32 & | getFar (void) const |
Field Set | |
| void | setDecoratee (const CameraPtr &value) |
| void | setBeacon (const NodePtr &value) |
| void | setNear (const Real32 &value) |
| void | setFar (const Real32 &value) |
Setup Rendering | |
| virtual void | setup (DrawActionBase *action, const Viewport &port) |
| virtual void | setupProjection (DrawActionBase *action, const Viewport &port) |
Access Parameters | |
| virtual void | getFrustum (FrustumVolume &result, const Viewport &port) |
| virtual void | getFrustum (FrustumVolume &result, UInt32 width, UInt32 height) |
| virtual void | getWorldToScreen (Matrix &result, const Viewport &port) |
| virtual void | getDecoration (Matrix &result, UInt32 width, UInt32 height) |
Intersection Helper | |
| bool | calcViewRay (Line &line, Int32 x, Int32 y, const Viewport &port) |
Handle Attachments | |
| void | addAttachment (const AttachmentPtr &fieldContainerP, UInt16 binding=0) |
| void | subAttachment (const AttachmentPtr &fieldContainerP, UInt16 binding=0) |
| AttachmentPtr | findAttachment (UInt32 groupId, UInt16 binding=0) |
| AttachmentPtr | findAttachment (const FieldContainerType &type, UInt16 binding=0) |
| SFAttachmentMap * | getSFAttachments (void) |
Get Instance Type Information | |
| UInt32 | getTypeId (void) const |
| UInt16 | getGroupId (void) const |
| const Char8 * | getTypeName (void) const |
| Field * | getField (UInt32 fieldId) |
| Field * | getField (const Char8 *fieldName) |
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 ShearedStereoCameraDecoratorPtr | create (void) |
| create a new instance of the class | |
| static ShearedStereoCameraDecoratorPtr | createEmpty (void) |
| create an empty new instance of the class, do not copy the prototype | |
Class Get | |
| static const char * | getClassname (void) |
Get Class Type Information | |
| static UInt16 | getClassGroupId (void) |
Static Public Attributes | |
| static const osg::BitVector | ZeroParallaxDistanceFieldMask |
| static const osg::BitVector | OverlapFieldMask |
| static const osg::BitVector | MTInfluenceMask |
| static const osg::BitVector | LeftEyeFieldMask |
| static const osg::BitVector | EyeSeparationFieldMask |
| static const osg::BitVector | DecorateeFieldMask |
| static const osg::BitVector | BeaconFieldMask |
| static const osg::BitVector | NearFieldMask |
| static const osg::BitVector | FarFieldMask |
| static const BitVector | AttachmentsFieldMask |
| static const BitVector | NextFieldMask |
CoredNodePtr helper | |
| static const bool | isNodeCore = false |
Protected Member Functions | |
Constructors | |
| ShearedStereoCameraDecoratorBase (void) | |
| ShearedStereoCameraDecoratorBase (const ShearedStereoCameraDecoratorBase &source) | |
Destructors | |
| virtual | ~ShearedStereoCameraDecoratorBase (void) |
Sync | |
| void | executeSyncImpl (ShearedStereoCameraDecoratorBase *pOther, const BitVector &whichField) |
| virtual void | executeSync (FieldContainer &other, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (StereoCameraDecoratorBase *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (CameraDecoratorBase *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (CameraBase *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (AttachmentContainer *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (FieldContainer *pOther, const BitVector &whichField) |
Pointer | |
| AttachmentContainerPtr | getPtr (void) |
MT Edit | |
| template<class FieldTypeT> | |
| void | beginEditX (const BitVector &whichField, FieldTypeT &field) |
| template<class FieldTypeT> | |
| void | endEditX (const BitVector &whichField, FieldTypeT &field) |
MT Construction | |
| void | onCreate (const FieldContainer *source=NULL) |
| void | onCreateAspect (const FieldContainer *aspect0, const FieldContainer *source=NULL) |
MT Destruction | |
| virtual void | onDestroy (void) |
Static Protected Member Functions | |
Create Fieldcontainer | |
| template<class ObjectPtrT> | |
| static void | newPtr (ObjectPtrT &result, const typename ObjectPtrT::StoredObjectType *prototypeP) |
| template<class ObjectPtrT> | |
| static void | newPtr (ObjectPtrT &result) |
Protected Attributes | |
Fields | |
| SFReal32 | _sfZeroParallaxDistance |
| SFReal32 | _sfOverlap |
Fields | |
| SFBool | _sfLeftEye |
| SFReal32 | _sfEyeSeparation |
Fields | |
| SFCameraPtr | _sfDecoratee |
Fields | |
| SFNodePtr | _sfBeacon |
| SFReal32 | _sfNear |
| SFReal32 | _sfFar |
Fields | |
| SFAttachmentMap | _attachmentMap |
Member | |
| UInt32 | _shares |
Private Types | |
| typedef StereoCameraDecorator | Inherited |
Private Member Functions | |
| void | operator= (const ShearedStereoCameraDecoratorBase &source) |
Static Private Attributes | |
| static FieldDescription * | _desc [] |
| ShearedStereoCameraDecorator description. | |
| static FieldContainerType | _type |
Friends | |
| class | FieldContainer |
Definition at line 82 of file OSGShearedStereoCameraDecoratorBase.h.
typedef StereoCameraDecorator osg::ShearedStereoCameraDecoratorBase::Inherited [private] |
Reimplemented from osg::StereoCameraDecorator.
Reimplemented in osg::ShearedStereoCameraDecorator.
Definition at line 86 of file OSGShearedStereoCameraDecoratorBase.h.
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 91 of file OSGShearedStereoCameraDecoratorBase.h.
| anonymous enum |
Definition at line 93 of file OSGShearedStereoCameraDecoratorBase.h.
00094 { 00095 ZeroParallaxDistanceFieldId = Inherited::NextFieldId, 00096 OverlapFieldId = ZeroParallaxDistanceFieldId + 1, 00097 NextFieldId = OverlapFieldId + 1 00098 };
anonymous enum [inherited] |
Definition at line 93 of file OSGStereoCameraDecoratorBase.h.
00094 { 00095 LeftEyeFieldId = Inherited::NextFieldId, 00096 EyeSeparationFieldId = LeftEyeFieldId + 1, 00097 NextFieldId = EyeSeparationFieldId + 1 00098 };
anonymous enum [inherited] |
Definition at line 92 of file OSGCameraDecoratorBase.h.
00093 { 00094 DecorateeFieldId = Inherited::NextFieldId, 00095 NextFieldId = DecorateeFieldId + 1 00096 };
anonymous enum [inherited] |
Definition at line 94 of file OSGCameraBase.h.
00095 { 00096 BeaconFieldId = Inherited::NextFieldId, 00097 NearFieldId = BeaconFieldId + 1, 00098 FarFieldId = NearFieldId + 1, 00099 NextFieldId = FarFieldId + 1 00100 };
anonymous enum [inherited] |
Definition at line 78 of file OSGAttachmentContainerImpl.h.
00079 { 00080 AttachmentsFieldId = Inherited::NextFieldId, 00081 NextFieldId = AttachmentsFieldId + 1 00082 };
anonymous enum [inherited] |
| ShearedStereoCameraDecoratorBase::ShearedStereoCameraDecoratorBase | ( | void | ) | [protected] |
Definition at line 175 of file OSGShearedStereoCameraDecoratorBase.cpp.
00175 : 00176 _sfZeroParallaxDistance (Real32(1)), 00177 _sfOverlap (Real32(1)), 00178 Inherited() 00179 { 00180 }
| ShearedStereoCameraDecoratorBase::ShearedStereoCameraDecoratorBase | ( | const ShearedStereoCameraDecoratorBase & | source | ) | [protected] |
Definition at line 186 of file OSGShearedStereoCameraDecoratorBase.cpp.
00186 : 00187 _sfZeroParallaxDistance (source._sfZeroParallaxDistance ), 00188 _sfOverlap (source._sfOverlap ), 00189 Inherited (source) 00190 { 00191 }
| ShearedStereoCameraDecoratorBase::~ShearedStereoCameraDecoratorBase | ( | void | ) | [protected, virtual] |
| osg::FieldContainerType & osg::ShearedStereoCameraDecoratorBase::getClassType | ( | void | ) | [inline, static] |
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 58 of file OSGShearedStereoCameraDecoratorBase.inl.
References _type.
Referenced by create().
00059 { 00060 return _type; 00061 }
| osg::UInt32 osg::ShearedStereoCameraDecoratorBase::getClassTypeId | ( | void | ) | [inline, static] |
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 65 of file OSGShearedStereoCameraDecoratorBase.inl.
References _type, and osg::TypeBase::getId().
00066 { 00067 return _type.getId(); 00068 }
| FieldContainerType & ShearedStereoCameraDecoratorBase::getType | ( | void | ) | [virtual] |
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 117 of file OSGShearedStereoCameraDecoratorBase.cpp.
References _type.
00118 { 00119 return _type; 00120 }
| const FieldContainerType & ShearedStereoCameraDecoratorBase::getType | ( | void | ) | const [virtual] |
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 122 of file OSGShearedStereoCameraDecoratorBase.cpp.
References _type.
00123 { 00124 return _type; 00125 }
| UInt32 ShearedStereoCameraDecoratorBase::getContainerSize | ( | void | ) | const [virtual] |
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 137 of file OSGShearedStereoCameraDecoratorBase.cpp.
00138 { 00139 return sizeof(ShearedStereoCameraDecorator); 00140 }
| SFReal32 * osg::ShearedStereoCameraDecoratorBase::getSFZeroParallaxDistance | ( | void | ) | [inline] |
Definition at line 101 of file OSGShearedStereoCameraDecoratorBase.inl.
References _sfZeroParallaxDistance.
00102 { 00103 return &_sfZeroParallaxDistance; 00104 }
| SFReal32 * osg::ShearedStereoCameraDecoratorBase::getSFOverlap | ( | void | ) | [inline] |
Definition at line 108 of file OSGShearedStereoCameraDecoratorBase.inl.
References _sfOverlap.
00109 { 00110 return &_sfOverlap; 00111 }
| Real32 & osg::ShearedStereoCameraDecoratorBase::getZeroParallaxDistance | ( | void | ) | [inline] |
Definition at line 116 of file OSGShearedStereoCameraDecoratorBase.inl.
References _sfZeroParallaxDistance, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::ShearedStereoCameraDecorator::getProjection().
00117 { 00118 return _sfZeroParallaxDistance.getValue(); 00119 }
| const Real32 & osg::ShearedStereoCameraDecoratorBase::getZeroParallaxDistance | ( | void | ) | const [inline] |
Definition at line 123 of file OSGShearedStereoCameraDecoratorBase.inl.
References _sfZeroParallaxDistance, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00124 { 00125 return _sfZeroParallaxDistance.getValue(); 00126 }
| Real32 & osg::ShearedStereoCameraDecoratorBase::getOverlap | ( | void | ) | [inline] |
Definition at line 137 of file OSGShearedStereoCameraDecoratorBase.inl.
References _sfOverlap, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::ShearedStereoCameraDecorator::getProjection().
00138 { 00139 return _sfOverlap.getValue(); 00140 }
| const Real32 & osg::ShearedStereoCameraDecoratorBase::getOverlap | ( | void | ) | const [inline] |
Definition at line 144 of file OSGShearedStereoCameraDecoratorBase.inl.
References _sfOverlap, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00145 { 00146 return _sfOverlap.getValue(); 00147 }
| void osg::ShearedStereoCameraDecoratorBase::setZeroParallaxDistance | ( | const Real32 & | value | ) | [inline] |
Definition at line 130 of file OSGShearedStereoCameraDecoratorBase.inl.
References _sfZeroParallaxDistance, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00131 { 00132 _sfZeroParallaxDistance.setValue(value); 00133 }
| void osg::ShearedStereoCameraDecoratorBase::setOverlap | ( | const Real32 & | value | ) | [inline] |
Definition at line 151 of file OSGShearedStereoCameraDecoratorBase.inl.
References _sfOverlap, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00152 { 00153 _sfOverlap.setValue(value); 00154 }
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 201 of file OSGShearedStereoCameraDecoratorBase.cpp.
References _sfOverlap, _sfZeroParallaxDistance, osg::SField< FieldTypeT, fieldNameSpace >::getBinSize(), osg::StereoCameraDecoratorBase::getBinSize(), osg::FieldBits::NoField, OverlapFieldMask, and ZeroParallaxDistanceFieldMask.
00202 { 00203 UInt32 returnValue = Inherited::getBinSize(whichField); 00204 00205 if(FieldBits::NoField != (ZeroParallaxDistanceFieldMask & whichField)) 00206 { 00207 returnValue += _sfZeroParallaxDistance.getBinSize(); 00208 } 00209 00210 if(FieldBits::NoField != (OverlapFieldMask & whichField)) 00211 { 00212 returnValue += _sfOverlap.getBinSize(); 00213 } 00214 00215 00216 return returnValue; 00217 }
| void ShearedStereoCameraDecoratorBase::copyToBin | ( | BinaryDataHandler & | pMem, | |
| const BitVector & | whichField | |||
| ) | [virtual] |
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 219 of file OSGShearedStereoCameraDecoratorBase.cpp.
References _sfOverlap, _sfZeroParallaxDistance, osg::SField< FieldTypeT, fieldNameSpace >::copyToBin(), osg::StereoCameraDecoratorBase::copyToBin(), osg::FieldBits::NoField, OverlapFieldMask, and ZeroParallaxDistanceFieldMask.
00221 { 00222 Inherited::copyToBin(pMem, whichField); 00223 00224 if(FieldBits::NoField != (ZeroParallaxDistanceFieldMask & whichField)) 00225 { 00226 _sfZeroParallaxDistance.copyToBin(pMem); 00227 } 00228 00229 if(FieldBits::NoField != (OverlapFieldMask & whichField)) 00230 { 00231 _sfOverlap.copyToBin(pMem); 00232 } 00233 00234 00235 }
| void ShearedStereoCameraDecoratorBase::copyFromBin | ( | BinaryDataHandler & | pMem, | |
| const BitVector & | whichField | |||
| ) | [virtual] |
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 237 of file OSGShearedStereoCameraDecoratorBase.cpp.
References _sfOverlap, _sfZeroParallaxDistance, osg::SField< FieldTypeT, fieldNameSpace >::copyFromBin(), osg::StereoCameraDecoratorBase::copyFromBin(), osg::FieldBits::NoField, OverlapFieldMask, and ZeroParallaxDistanceFieldMask.
00239 { 00240 Inherited::copyFromBin(pMem, whichField); 00241 00242 if(FieldBits::NoField != (ZeroParallaxDistanceFieldMask & whichField)) 00243 { 00244 _sfZeroParallaxDistance.copyFromBin(pMem); 00245 } 00246 00247 if(FieldBits::NoField != (OverlapFieldMask & whichField)) 00248 { 00249 _sfOverlap.copyFromBin(pMem); 00250 } 00251 00252 00253 }
| ShearedStereoCameraDecoratorPtr osg::ShearedStereoCameraDecoratorBase::create | ( | void | ) | [inline, static] |
Definition at line 72 of file OSGShearedStereoCameraDecoratorBase.inl.
References osg::AttachmentContainerPtr::dcast(), getClassType(), osg::NullFC, and shallowCopy().
00073 { 00074 ShearedStereoCameraDecoratorPtr fc; 00075 00076 if(getClassType().getPrototype() != OSG::NullFC) 00077 { 00078 fc = ShearedStereoCameraDecoratorPtr::dcast( 00079 getClassType().getPrototype()-> shallowCopy()); 00080 } 00081 00082 return fc; 00083 }
| ShearedStereoCameraDecoratorPtr osg::ShearedStereoCameraDecoratorBase::createEmpty | ( | void | ) | [inline, static] |
Definition at line 87 of file OSGShearedStereoCameraDecoratorBase.inl.
References osg::FieldContainer::newPtr().
00088 { 00089 ShearedStereoCameraDecoratorPtr returnValue; 00090 00091 newPtr(returnValue); 00092 00093 return returnValue; 00094 }
| FieldContainerPtr ShearedStereoCameraDecoratorBase::shallowCopy | ( | void | ) | const [virtual] |
Implements osg::FieldContainer.
Definition at line 128 of file OSGShearedStereoCameraDecoratorBase.cpp.
References osg::FieldContainer::newPtr().
Referenced by create().
00129 { 00130 ShearedStereoCameraDecoratorPtr returnValue; 00131 00132 newPtr(returnValue, dynamic_cast<const ShearedStereoCameraDecorator *>(this)); 00133 00134 return returnValue; 00135 }
| void ShearedStereoCameraDecoratorBase::executeSyncImpl | ( | ShearedStereoCameraDecoratorBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected] |
Definition at line 256 of file OSGShearedStereoCameraDecoratorBase.cpp.
References _sfOverlap, _sfZeroParallaxDistance, osg::StereoCameraDecoratorBase::executeSyncImpl(), osg::FieldBits::NoField, OverlapFieldMask, osg::SField< FieldTypeT, fieldNameSpace >::syncWith(), and ZeroParallaxDistanceFieldMask.
Referenced by executeSync().
00258 { 00259 00260 Inherited::executeSyncImpl(pOther, whichField); 00261 00262 if(FieldBits::NoField != (ZeroParallaxDistanceFieldMask & whichField)) 00263 _sfZeroParallaxDistance.syncWith(pOther->_sfZeroParallaxDistance); 00264 00265 if(FieldBits::NoField != (OverlapFieldMask & whichField)) 00266 _sfOverlap.syncWith(pOther->_sfOverlap); 00267 00268 00269 }
| void ShearedStereoCameraDecoratorBase::executeSync | ( | FieldContainer & | other, | |
| const BitVector & | whichField | |||
| ) | [protected, virtual] |
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 144 of file OSGShearedStereoCameraDecoratorBase.cpp.
References executeSyncImpl().
00146 { 00147 this->executeSyncImpl((ShearedStereoCameraDecoratorBase *) &other, whichField); 00148 }
| void osg::ShearedStereoCameraDecoratorBase::operator= | ( | const ShearedStereoCameraDecoratorBase & | source | ) | [private] |
Reimplemented from osg::CameraDecorator.
Reimplemented in osg::ProjectionCameraDecorator, and osg::ShearedStereoCameraDecorator.
Definition at line 89 of file OSGStereoCameraDecorator.cpp.
Referenced by osg::ShearedStereoCameraDecorator::changed(), and osg::ProjectionCameraDecorator::changed().
| void StereoCameraDecorator::dump | ( | UInt32 | uiIndent = 0, |
|
| const BitVector | bvFlags = 0 | |||
| ) | const [virtual, inherited] |
Reimplemented from osg::CameraDecorator.
Reimplemented in osg::ProjectionCameraDecorator, and osg::ShearedStereoCameraDecorator.
Definition at line 93 of file OSGStereoCameraDecorator.cpp.
References SLOG.
00095 { 00096 SLOG << "Dump StereoCameraDecorator NI" << std::endl; 00097 }
| SFBool * osg::StereoCameraDecoratorBase::getSFLeftEye | ( | void | ) | [inline, inherited] |
Definition at line 75 of file OSGStereoCameraDecoratorBase.inl.
References osg::StereoCameraDecoratorBase::_sfLeftEye.
00076 { 00077 return &_sfLeftEye; 00078 }
| SFReal32 * osg::StereoCameraDecoratorBase::getSFEyeSeparation | ( | void | ) | [inline, inherited] |
Definition at line 82 of file OSGStereoCameraDecoratorBase.inl.
References osg::StereoCameraDecoratorBase::_sfEyeSeparation.
00083 { 00084 return &_sfEyeSeparation; 00085 }
| bool & osg::StereoCameraDecoratorBase::getLeftEye | ( | void | ) | [inline, inherited] |
Definition at line 90 of file OSGStereoCameraDecoratorBase.inl.
References osg::StereoCameraDecoratorBase::_sfLeftEye, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::ShearedStereoCameraDecorator::getProjection(), osg::ProjectionCameraDecorator::getProjection(), and osg::ProjectionCameraDecorator::getProjectionTranslation().
00091 { 00092 return _sfLeftEye.getValue(); 00093 }
| const bool & osg::StereoCameraDecoratorBase::getLeftEye | ( | void | ) | const [inline, inherited] |
Definition at line 97 of file OSGStereoCameraDecoratorBase.inl.
References osg::StereoCameraDecoratorBase::_sfLeftEye, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00098 { 00099 return _sfLeftEye.getValue(); 00100 }
| Real32 & osg::StereoCameraDecoratorBase::getEyeSeparation | ( | void | ) | [inline, inherited] |
Definition at line 111 of file OSGStereoCameraDecoratorBase.inl.
References osg::StereoCameraDecoratorBase::_sfEyeSeparation, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::ShearedStereoCameraDecorator::getProjection(), osg::ProjectionCameraDecorator::getProjection(), and osg::ProjectionCameraDecorator::getProjectionTranslation().
00112 { 00113 return _sfEyeSeparation.getValue(); 00114 }
| const Real32 & osg::StereoCameraDecoratorBase::getEyeSeparation | ( | void | ) | const [inline, inherited] |
Definition at line 118 of file OSGStereoCameraDecoratorBase.inl.
References osg::StereoCameraDecoratorBase::_sfEyeSeparation, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00119 { 00120 return _sfEyeSeparation.getValue(); 00121 }
| void osg::StereoCameraDecoratorBase::setLeftEye | ( | const bool & | value | ) | [inline, inherited] |
Definition at line 104 of file OSGStereoCameraDecoratorBase.inl.
References osg::StereoCameraDecoratorBase::_sfLeftEye, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00105 { 00106 _sfLeftEye.setValue(value); 00107 }
| void osg::StereoCameraDecoratorBase::setEyeSeparation | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 125 of file OSGStereoCameraDecoratorBase.inl.
References osg::StereoCameraDecoratorBase::_sfEyeSeparation, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00126 { 00127 _sfEyeSeparation.setValue(value); 00128 }
| void StereoCameraDecoratorBase::executeSyncImpl | ( | StereoCameraDecoratorBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 247 of file OSGStereoCameraDecoratorBase.cpp.
References osg::StereoCameraDecoratorBase::_sfEyeSeparation, osg::StereoCameraDecoratorBase::_sfLeftEye, osg::CameraDecoratorBase::executeSyncImpl(), osg::StereoCameraDecoratorBase::EyeSeparationFieldMask, osg::StereoCameraDecoratorBase::LeftEyeFieldMask, osg::FieldBits::NoField, and osg::SField< FieldTypeT, fieldNameSpace >::syncWith().
Referenced by osg::StereoCameraDecoratorBase::executeSync(), executeSyncImpl(), and osg::ProjectionCameraDecoratorBase::executeSyncImpl().
00249 { 00250 00251 Inherited::executeSyncImpl(pOther, whichField); 00252 00253 if(FieldBits::NoField != (LeftEyeFieldMask & whichField)) 00254 _sfLeftEye.syncWith(pOther->_sfLeftEye); 00255 00256 if(FieldBits::NoField != (EyeSeparationFieldMask & whichField)) 00257 _sfEyeSeparation.syncWith(pOther->_sfEyeSeparation); 00258 00259 00260 }
| void CameraDecoratorBase::executeSyncImpl | ( | CameraDecoratorBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 214 of file OSGCameraDecoratorBase.cpp.
References osg::CameraDecoratorBase::_sfDecoratee, osg::CameraDecoratorBase::DecorateeFieldMask, osg::CameraBase::executeSyncImpl(), osg::FieldBits::NoField, and osg::SField< FieldTypeT, fieldNameSpace >::syncWith().
Referenced by osg::CameraDecoratorBase::executeSync(), osg::TileCameraDecoratorBase::executeSyncImpl(), osg::StereoCameraDecoratorBase::executeSyncImpl(), and osg::MatrixCameraDecoratorBase::executeSyncImpl().
00216 { 00217 00218 Inherited::executeSyncImpl(pOther, whichField); 00219 00220 if(FieldBits::NoField != (DecorateeFieldMask & whichField)) 00221 { 00222 _sfDecoratee.syncWith(pOther->_sfDecoratee); 00223 } 00224 00225 }
| void CameraBase::executeSyncImpl | ( | CameraBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 275 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfBeacon, osg::CameraBase::_sfFar, osg::CameraBase::_sfNear, osg::CameraBase::BeaconFieldMask, osg::AttachmentContainer::executeSyncImpl(), osg::CameraBase::FarFieldMask, osg::CameraBase::NearFieldMask, osg::FieldBits::NoField, and osg::SField< FieldTypeT, fieldNameSpace >::syncWith().
Referenced by osg::CameraBase::executeSync(), osg::PerspectiveCameraBase::executeSyncImpl(), osg::OrthographicCameraBase::executeSyncImpl(), osg::MatrixCameraBase::executeSyncImpl(), and osg::CameraDecoratorBase::executeSyncImpl().
00277 { 00278 00279 Inherited::executeSyncImpl(pOther, whichField); 00280 00281 if(FieldBits::NoField != (BeaconFieldMask & whichField)) 00282 _sfBeacon.syncWith(pOther->_sfBeacon); 00283 00284 if(FieldBits::NoField != (NearFieldMask & whichField)) 00285 _sfNear.syncWith(pOther->_sfNear); 00286 00287 if(FieldBits::NoField != (FarFieldMask & whichField)) 00288 _sfFar.syncWith(pOther->_sfFar); 00289 00290 00291 }
| void AttachmentContainer::executeSyncImpl | ( | AttachmentContainer * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 316 of file OSGAttachmentContainer.cpp.
References osg::AttachmentContainer::_attachmentMap, osg::AttachmentContainer::AttachmentsFieldMask, osg::FieldContainer::executeSyncImpl(), osg::FieldBits::NoField, and osg::SField< FieldTypeT, fieldNameSpace >::syncWith().
Referenced by osg::AttachmentContainer::executeSync(), osg::WindowBase::executeSyncImpl(), osg::ViewportBase::executeSyncImpl(), osg::ShaderParameterBase::executeSyncImpl(), osg::Node::executeSyncImpl(), osg::NodeCore::executeSyncImpl(), osg::MaterialBase::executeSyncImpl(), osg::ImageComposerBase::executeSyncImpl(), osg::ImageBase::executeSyncImpl(), osg::ForegroundBase::executeSyncImpl(), osg::DisplayFilterBase::executeSyncImpl(), osg::DisplayCalibrationBase::executeSyncImpl(), osg::CameraBase::executeSyncImpl(), and osg::BackgroundBase::executeSyncImpl().
00319 { 00320 Inherited::executeSyncImpl(pOther, whichField); 00321 00322 if (FieldBits::NoField != (AttachmentsFieldMask & whichField)) 00323 { 00324 _attachmentMap.syncWith(pOther->_attachmentMap); 00325 } 00326 }
| void osg::FieldContainer::executeSyncImpl | ( | FieldContainer * | pOther, | |
| const BitVector & | whichField | |||
| ) | [inline, protected, inherited] |
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().
| void CameraDecorator::draw | ( | DrawAction * | action, | |
| const Viewport & | port | |||
| ) | [virtual, inherited] |
Reimplemented from osg::Camera.
Definition at line 100 of file OSGCameraDecorator.cpp.
References FWARNING, osg::CameraDecoratorBase::getDecoratee(), and osg::NullFC.
00102 { 00103 CameraPtr camera = getDecoratee(); 00104 if(camera == NullFC) 00105 { 00106 FWARNING(("CameraDecorator::draw: no decoratee!\n")); 00107 return; 00108 } 00109 camera->draw(action, port); 00110 }
| void CameraDecorator::getProjection | ( | Matrix & | result, | |
| UInt32 | width, | |||
| UInt32 | height | |||
| ) | [virtual, inherited] |
Reimplemented from osg::Camera.
Reimplemented in osg::MatrixCameraDecorator, osg::ProjectionCameraDecorator, osg::ShearedStereoCameraDecorator, and osg::TileCameraDecorator.
Definition at line 112 of file OSGCameraDecorator.cpp.
References FWARNING, osg::CameraDecoratorBase::getDecoratee(), osg::NullFC, and osg::TransformationMatrix< ValueTypeT >::setIdentity().
00115 { 00116 CameraPtr camera = getDecoratee(); 00117 if(camera == NullFC) 00118 { 00119 FWARNING(("CameraDecorator::getProjection: no decoratee!\n")); 00120 result.setIdentity(); 00121 return; 00122 } 00123 camera->getProjection(result, width, height); 00124 }
| void CameraDecorator::getProjectionTranslation | ( | Matrix & | result, | |
| UInt32 | width, | |||
| UInt32 | height | |||
| ) | [virtual, inherited] |
Reimplemented from osg::Camera.
Reimplemented in osg::MatrixCameraDecorator, and osg::ProjectionCameraDecorator.
Definition at line 126 of file OSGCameraDecorator.cpp.
References FWARNING, osg::CameraDecoratorBase::getDecoratee(), osg::NullFC, and osg::TransformationMatrix< ValueTypeT >::setIdentity().
00129 { 00130 CameraPtr camera = getDecoratee(); 00131 if(camera == NullFC) 00132 { 00133 FWARNING(("CameraDecorator::getProjectionTranslation: no decoratee!\n")); 00134 result.setIdentity(); 00135 return; 00136 } 00137 camera->getProjectionTranslation(result, width, height); 00138 }
| void CameraDecorator::getViewing | ( | Matrix & | result, | |
| UInt32 | width, | |||
| UInt32 | height | |||
| ) | [virtual, inherited] |
Reimplemented from osg::Camera.
Reimplemented in osg::MatrixCameraDecorator, and osg::ProjectionCameraDecorator.
Definition at line 140 of file OSGCameraDecorator.cpp.
References FWARNING, osg::CameraDecoratorBase::getDecoratee(), osg::NullFC, and osg::TransformationMatrix< ValueTypeT >::setIdentity().
00143 { 00144 CameraPtr camera = getDecoratee(); 00145 if(camera == NullFC) 00146 { 00147 FWARNING(("CameraDecorator::getViewing: no decoratee!\n")); 00148 result.setIdentity(); 00149 return; 00150 } 00151 camera->getViewing(result, width, height); 00152 }
| SFCameraPtr * osg::CameraDecoratorBase::getSFDecoratee | ( | void | ) | [inline, inherited] |
Definition at line 74 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::_sfDecoratee.
00075 { 00076 return &_sfDecoratee; 00077 }
| SFNodePtr * osg::CameraDecoratorBase::getSFBeacon | ( | void | ) | [inline, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 98 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::getDecoratee().
00099 { 00100 return getDecoratee()->getSFBeacon(); 00101 }
| SFReal32 * osg::CameraDecoratorBase::getSFNear | ( | void | ) | [inline, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 104 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::getDecoratee().
00105 { 00106 return getDecoratee()->getSFNear(); 00107 }
| SFReal32 * osg::CameraDecoratorBase::getSFFar | ( | void | ) | [inline, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 110 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::getDecoratee().
00111 { 00112 return getDecoratee()->getSFFar(); 00113 }
| CameraPtr & osg::CameraDecoratorBase::getDecoratee | ( | void | ) | [inline, inherited] |
Definition at line 80 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::_sfDecoratee, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::PolygonBackground::clear(), osg::GradientBackground::clear(), osg::PolygonForeground::draw(), osg::CameraDecorator::draw(), osg::CameraDecoratorBase::getBeacon(), osg::TileCameraDecorator::getDecoration(), osg::ShearedStereoCameraDecorator::getDecoration(), osg::CameraDecoratorBase::getFar(), osg::CameraDecoratorBase::getNear(), osg::TileCameraDecorator::getProjection(), osg::ShearedStereoCameraDecorator::getProjection(), osg::ProjectionCameraDecorator::getProjection(), osg::MatrixCameraDecorator::getProjection(), osg::CameraDecorator::getProjection(), osg::ProjectionCameraDecorator::getProjectionTranslation(), osg::MatrixCameraDecorator::getProjectionTranslation(), osg::CameraDecorator::getProjectionTranslation(), osg::CameraDecoratorBase::getSFBeacon(), osg::CameraDecoratorBase::getSFFar(), osg::CameraDecoratorBase::getSFNear(), osg::MatrixCameraDecorator::getViewing(), osg::CameraDecorator::getViewing(), osg::CameraDecoratorBase::setBeacon(), osg::CameraDecoratorBase::setFar(), and osg::CameraDecoratorBase::setNear().
00081 { 00082 return _sfDecoratee.getValue(); 00083 }
| const CameraPtr & osg::CameraDecoratorBase::getDecoratee | ( | void | ) | const [inline, inherited] |
Definition at line 86 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::_sfDecoratee, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00087 { 00088 return _sfDecoratee.getValue(); 00089 }
| NodePtr & osg::CameraDecoratorBase::getBeacon | ( | void | ) | [inline, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 117 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::getDecoratee().
00118 { 00119 return getDecoratee()->getBeacon(); 00120 }
| const NodePtr & osg::CameraDecoratorBase::getBeacon | ( | void | ) | const [inline, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 123 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::getDecoratee().
00124 { 00125 return getDecoratee()->getBeacon(); 00126 }
| Real32 & osg::CameraDecoratorBase::getNear | ( | void | ) | [inline, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 137 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::getDecoratee().
00138 { 00139 return getDecoratee()->getNear(); 00140 }
| const Real32 & osg::CameraDecoratorBase::getNear | ( | void | ) | const [inline, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 143 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::getDecoratee().
00144 { 00145 return getDecoratee()->getNear(); 00146 }
| Real32 & osg::CameraDecoratorBase::getFar | ( | void | ) | [inline, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 157 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::getDecoratee().
00158 { 00159 return getDecoratee()->getFar(); 00160 }
| const Real32 & osg::CameraDecoratorBase::getFar | ( | void | ) | const [inline, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 163 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::getDecoratee().
00164 { 00165 return getDecoratee()->getFar(); 00166 }
| void osg::CameraDecoratorBase::setDecoratee | ( | const CameraPtr & | value | ) | [inline, inherited] |
Definition at line 92 of file OSGCameraDecoratorBase.inl.
References osg::CameraDecoratorBase::_sfDecoratee, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00093 { 00094 _sfDecoratee.setValue(value); 00095 }
| void osg::CameraDecoratorBase::setBeacon | ( | const NodePtr & | value | ) | [inline, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 129 of file OSGCameraDecoratorBase.inl.
References osg::CameraBase::BeaconFieldMask, osg::beginEditCP(), osg::endEditCP(), and osg::CameraDecoratorBase::getDecoratee().
00130 { 00131 beginEditCP(getDecoratee(), BeaconFieldMask); 00132 getDecoratee()->setBeacon(value); 00133 endEditCP (getDecoratee(), BeaconFieldMask); 00134 }
| void osg::CameraDecoratorBase::setNear | ( | const Real32 & | value | ) | [inline, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 149 of file OSGCameraDecoratorBase.inl.
References osg::beginEditCP(), osg::endEditCP(), osg::CameraDecoratorBase::getDecoratee(), and osg::CameraBase::NearFieldMask.
00150 { 00151 beginEditCP(getDecoratee(), NearFieldMask); 00152 getDecoratee()->setNear(value); 00153 endEditCP (getDecoratee(), NearFieldMask); 00154 }
| void osg::CameraDecoratorBase::setFar | ( | const Real32 & | value | ) | [inline, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 169 of file OSGCameraDecoratorBase.inl.
References osg::beginEditCP(), osg::endEditCP(), osg::CameraBase::FarFieldMask, and osg::CameraDecoratorBase::getDecoratee().
00170 { 00171 beginEditCP(getDecoratee(), FarFieldMask); 00172 getDecoratee()->setFar(value); 00173 endEditCP (getDecoratee(), FarFieldMask); 00174 }
| static const char* osg::Camera::getClassname | ( | void | ) | [inline, static, inherited] |
Reimplemented in osg::MatrixCamera, osg::OffCenterPerspectiveCamera, osg::PerspectiveCamera, and osg::TileCameraDecorator.
Definition at line 73 of file OSGCamera.h.
| void Camera::setup | ( | DrawActionBase * | action, | |
| const Viewport & | port | |||
| ) | [virtual, inherited] |
Setup OpenGL for rendering, call all the necessary commands to start rendering with this camera.
Definition at line 109 of file OSGCamera.cpp.
References osg::Viewport::getPixelHeight(), osg::Viewport::getPixelWidth(), osg::Camera::getProjection(), osg::Camera::getProjectionTranslation(), osg::TransformationMatrix< ValueTypeT >::getValues(), osg::Camera::getViewing(), and osg::TransformationMatrix< ValueTypeT >::mult().
00111 { 00112 Matrix m, t; 00113 00114 // set the projection 00115 00116 getProjection ( m, port.getPixelWidth(), port.getPixelHeight() ); 00117 getProjectionTranslation( t, port.getPixelWidth(), port.getPixelHeight() ); 00118 00119 m.mult(t); 00120 00121 //SDEBUG << "Projection matrix: " << m << std::endl; 00122 00123 glMatrixMode( GL_PROJECTION ); 00124 glLoadMatrixf( m.getValues() ); 00125 00126 // set the viewing 00127 00128 getViewing( m, port.getPixelWidth(), port.getPixelHeight() ); 00129 00130 //SDEBUG << "Viewing matrix: " << m << std::endl; 00131 00132 glMatrixMode( GL_MODELVIEW ); 00133 glLoadMatrixf( m.getValues() ); 00134 }
| void Camera::setupProjection | ( | DrawActionBase * | action, | |
| const Viewport & | port | |||
| ) | [virtual, inherited] |
Setup OpenGL projection for rendering.
Definition at line 138 of file OSGCamera.cpp.
References osg::Viewport::getPixelHeight(), osg::Viewport::getPixelWidth(), osg::Camera::getProjection(), osg::Camera::getProjectionTranslation(), osg::TransformationMatrix< ValueTypeT >::getValues(), and osg::TransformationMatrix< ValueTypeT >::mult().
Referenced by osg::RenderAction::start().
00140 { 00141 Matrix m, t; 00142 00143 // set the projection 00144 00145 getProjection ( m, port.getPixelWidth(), port.getPixelHeight() ); 00146 getProjectionTranslation( t, port.getPixelWidth(), port.getPixelHeight() ); 00147 00148 m.mult(t); 00149 00150 //SDEBUG << "Projection matrix: " << m << std::endl; 00151 00152 glMatrixMode( GL_PROJECTION ); 00153 glLoadMatrixf( m.getValues() ); 00154 }
| void Camera::getFrustum | ( | FrustumVolume & | result, | |
| const Viewport & | p | |||
| ) | [virtual, inherited] |
Calculate the frustum of this camera's visible area.
Definition at line 202 of file OSGCamera.cpp.
References osg::Viewport::getPixelHeight(), osg::Viewport::getPixelWidth(), osg::Camera::getProjection(), osg::Camera::getProjectionTranslation(), osg::Camera::getViewing(), osg::TransformationMatrix< ValueTypeT >::mult(), and osg::FrustumVolume::setPlanes().
Referenced by osg::DrawActionBase::start().
00203 { 00204 Matrix mv,prt,pr; 00205 00206 getProjection (pr , p.getPixelWidth(), p.getPixelHeight()); 00207 getProjectionTranslation(prt, p.getPixelWidth(), p.getPixelHeight()); 00208 getViewing (mv , p.getPixelWidth(), p.getPixelHeight()); 00209 00210 pr.mult(prt); 00211 pr.mult(mv ); 00212 00213 result.setPlanes(pr); 00214 }
| void Camera::getFrustum | ( | FrustumVolume & | result, | |
| UInt32 | width, | |||
| UInt32 | height | |||
| ) | [virtual, inherited] |
Calculate the frustum of this camera's visible area (w,h instead port).
Definition at line 218 of file OSGCamera.cpp.
References osg::Camera::getProjection(), osg::Camera::getProjectionTranslation(), osg::Camera::getViewing(), osg::TransformationMatrix< ValueTypeT >::mult(), and osg::FrustumVolume::setPlanes().
00220 { 00221 Matrix mv,prt,pr; 00222 00223 getProjection (pr , width, height); 00224 getProjectionTranslation(prt, width, height); 00225 getViewing (mv , width, height); 00226 00227 pr.mult(prt); 00228 pr.mult(mv ); 00229 00230 result.setPlanes(pr); 00231 }
Calculate the matrix that transforms world coordinates into the screen coordinate system for this camera.
Definition at line 236 of file OSGCamera.cpp.
References osg::Viewport::getPixelHeight(), osg::Viewport::getPixelWidth(), osg::Camera::getProjection(), osg::Camera::getProjectionTranslation(), osg::Camera::getViewing(), and osg::TransformationMatrix< ValueTypeT >::mult().
Referenced by osg::ScreenGroup::calcMatrix(), and osg::RenderAction::start().
00237 { 00238 Matrix mv,prt,pr; 00239 00240 getProjection (result, p.getPixelWidth(), p.getPixelHeight()); 00241 getProjectionTranslation(prt , p.getPixelWidth(), p.getPixelHeight()); 00242 getViewing (mv , p.getPixelWidth(), p.getPixelHeight()); 00243 00244 result.mult(prt); 00245 result.mult(mv ); 00246 }
Get/calculate the decoration matrix for this camera. The default is identity.
Reimplemented in osg::ShearedStereoCameraDecorator, and osg::TileCameraDecorator.
Definition at line 250 of file OSGCamera.cpp.
References osg::TransformationMatrix< ValueTypeT >::setIdentity().
Referenced by osg::PolygonBackground::clear(), and osg::PolygonForeground::draw().
00251 { 00252 result.setIdentity(); 00253 }
Calculate a ray that starts at the camera position and goes through the pixel x, y in the viewport port. x and y are relative to the parent window's upper left corner.
Definition at line 259 of file OSGCamera.cpp.
References osg::ViewportBase::getParent(), osg::Viewport::getPixelHeight(), osg::Viewport::getPixelLeft(), osg::Viewport::getPixelTop(), osg::Viewport::getPixelWidth(), osg::Camera::getProjection(), osg::Camera::getProjectionTranslation(), osg::Camera::getViewing(), osg::TransformationMatrix< ValueTypeT >::invertFrom(), osg::TransformationMatrix< ValueTypeT >::mult(), osg::TransformationMatrix< ValueTypeT >::multFullMatrixPnt(), and osg::Line::setValue().
00260 { 00261 if(port.getPixelWidth() <= 0 || port.getPixelHeight() <= 0) 00262 { 00263 return false; 00264 } 00265 00266 Matrix proj, projtrans, view; 00267 00268 getProjection(proj, port.getPixelWidth(), port.getPixelHeight()); 00269 getProjectionTranslation(projtrans, port.getPixelWidth(), 00270 port.getPixelHeight()); 00271 getViewing(view, port.getPixelWidth(), port.getPixelHeight()); 00272 00273 Matrix wctocc = proj; 00274 wctocc.mult(projtrans); 00275 wctocc.mult(view); 00276 00277 Matrix cctowc; 00278 cctowc.invertFrom(wctocc); 00279 00280 Real32 rx = (x - port.getPixelLeft()) / (Real32) port.getPixelWidth() 00281 * 2.f - 1.f, 00282 ry = 1.f - ((y - (port.getParent()->getHeight() - 00283 port.getPixelTop()) 00284 ) / 00285 (Real32) port.getPixelHeight() 00286 ) * 2.f; 00287 00288 Pnt3f from, at; 00289 cctowc.multFullMatrixPnt(Pnt3f(rx, ry, -1), from); 00290 cctowc.multFullMatrixPnt(Pnt3f(rx, ry, 1), at); 00291 00292 line.setValue(from, at-from); 00293 00294 return true; 00295 }
| void AttachmentContainer::addAttachment | ( | const AttachmentPtr & | fieldContainerP, | |
| UInt16 | binding = 0 | |||
| ) | [inherited] |
Definition at line 84 of file OSGAttachmentContainer.cpp.
References osg::addRefCP(), osg::beginEditCP(), osg::endEditCP(), osg::NullFC, and osg::subRefCP().
Referenced by osg::AttachmentContainer::AttachmentContainer(), osg::Node::onCreate(), and osg::Image::setAttachmentField().
00086 { 00087 UInt32 key; 00088 00089 if(fieldContainerP == NullFC) 00090 return; 00091 00092 key = (UInt32 (fieldContainerP->getGroupId()) << 16) | binding; 00093 00094 addRefCP(fieldContainerP); 00095 00096 beginEditCP(fieldContainerP, Attachment::ParentsFieldMask); 00097 { 00098 fieldContainerP->addParent(getPtr()); 00099 } 00100 endEditCP (fieldContainerP, Attachment::ParentsFieldMask); 00101 00102 AttachmentMap::iterator fcI = _attachmentMap.getValue().find(key); 00103 00104 if(fcI != _attachmentMap.getValue().end()) 00105 { 00106 beginEditCP((*fcI).second, Attachment::ParentsFieldMask); 00107 { 00108 (*fcI).second->subParent(getPtr()); 00109 } 00110 endEditCP ((*fcI).second, Attachment::ParentsFieldMask); 00111 00112 subRefCP((*fcI).second); 00113 00114 (*fcI).second = fieldContainerP; 00115 } 00116 else 00117 { 00118 _attachmentMap.getValue()[key] = fieldContainerP; 00119 } 00120 }
| void AttachmentContainer::subAttachment | ( | const AttachmentPtr & | fieldContainerP, | |
| UInt16 | binding = 0 | |||
| ) | [inherited] |
Definition at line 122 of file OSGAttachmentContainer.cpp.
References osg::AttachmentContainer::_attachmentMap, osg::beginEditCP(), osg::endEditCP(), osg::AttachmentContainer::getPtr(), osg::SField< FieldTypeT, fieldNameSpace >::getValue(), osg::NullFC, osg::Attachment::ParentsFieldMask, and osg::subRefCP().
00124 { 00125 UInt32 key; 00126 00127 AttachmentMap::iterator fcI; 00128 00129 if(fieldContainerP == NullFC) 00130 return; 00131 00132 key = (UInt32(fieldContainerP->getGroupId()) << 16) | binding; 00133 00134 fcI = _attachmentMap.getValue().find(key); 00135 00136 if(fcI != _attachmentMap.getValue().end()) 00137 { 00138 beginEditCP(fieldContainerP, Attachment::ParentsFieldMask); 00139 { 00140 (*fcI).second->subParent(getPtr()); 00141 } 00142 endEditCP (fieldContainerP, Attachment::ParentsFieldMask); 00143 00144 subRefCP((*fcI).second); 00145 00146 _attachmentMap.getValue().erase(fcI); 00147 } 00148 }
| AttachmentPtr AttachmentContainer::findAttachment | ( | UInt32 | groupId, | |
| UInt16 | binding = 0 | |||
| ) | [inherited] |
Definition at line 150 of file OSGAttachmentContainer.cpp.
References osg::AttachmentContainer::_attachmentMap, osg::SField< FieldTypeT, fieldNameSpace >::getValue(), and osg::NullFC.
Referenced by osg::Image::findAttachmentField(), and osg::Image::setAttachmentField().
00152 { 00153 UInt32 key = (UInt32(groupId) << 16) | binding; 00154 00155 AttachmentMap::iterator fcI = _attachmentMap.getValue().find(key); 00156 00157 if(fcI == _attachmentMap.getValue().end()) 00158 { 00159 return NullFC; 00160 } 00161 else 00162 { 00163 return (*fcI).second; 00164 } 00165 }
| AttachmentPtr osg::AttachmentContainer::findAttachment | ( | const FieldContainerType & | type, | |
| UInt16 | binding = 0 | |||
| ) | [inline, inherited] |
Definition at line 57 of file OSGAttachmentContainerImpl.inl.
00060 { 00061 return findAttachment(type.getGroupId(), binding); 00062 }
| SFAttachmentMap * AttachmentContainer::getSFAttachments | ( | void | ) | [inherited] |
Field Access
Definition at line 170 of file OSGAttachmentContainer.cpp.
References osg::AttachmentContainer::_attachmentMap.
00171 { 00172 return &_attachmentMap; 00173 }
| AttachmentContainerPtr AttachmentContainer::getPtr | ( | void | ) | [protected, inherited] |
Definition at line 352 of file OSGAttachmentContainer.cpp.
Referenced by osg::FileGrabForeground::draw(), osg::FBOViewport::render(), osg::AttachmentContainer::subAttachment(), and osg::AttachmentContainer::~AttachmentContainer().
00353 { 00354 return AttachmentContainerPtr(*this); 00355 }
| UInt16 osg::FieldContainer::getClassGroupId | ( | void | ) | [inline, static, inherited] |
Definition at line 71 of file OSGFieldContainerImpl.inl.
References osg::FieldContainer::_type, and osg::FieldContainerType::getGroupId().
00072 { 00073 return _type.getGroupId(); 00074 }
| UInt32 osg::FieldContainer::getTypeId | ( | void | ) | const [inline, inherited] |
Definition at line 77 of file OSGFieldContainerImpl.inl.
References osg::TypeBase::getId(), and osg::FieldContainer::getType().
Referenced by osg::TextureChunk::changeFrom(), and osg::CubeTextureChunk::changeFrom().
00078 { 00079 return getType().getId(); 00080 }
| UInt16 osg::FieldContainer::getGroupId | ( | void | ) | const [inline, inherited] |
Definition at line 83 of file OSGFieldContainerImpl.inl.
References osg::FieldContainerType::getGroupId(), and osg::FieldContainer::getType().
Referenced by osg::fcptrAttributeMap(), osg::Image::setAttachmentField(), and osg::stringAttributeMap().
00084 { 00085 return getType().getGroupId(); 00086 }
| const Char8 * osg::FieldContainer::getTypeName | ( | void | ) | const [inline, inherited] |
Definition at line 89 of file OSGFieldContainerImpl.inl.
References osg::TypeBase::getCName(), and osg::FieldContainer::getType().
00090 { 00091 return getType().getCName(); 00092 }
Generic Field Access
Definition at line 95 of file OSGFieldContainerImpl.inl.
References osg::FieldDescription::getField(), osg::FieldContainerType::getFieldDescription(), and osg::FieldContainer::getType().
Referenced by osg::QFCItem::expand(), osg::VRMLShapeDesc::getFieldAndDesc(), osg::QFieldViewBase::getFieldPtr(), osg::QFieldEditorBase::getFieldPtr(), osg::getParentsField(), and osg::QFCItem::setup().
00096 { 00097 const FieldDescription *desc = getType().getFieldDescription(fieldId); 00098 00099 return desc ? desc->getField(*this) : NULL; 00100 }
Generic Field Access
Definition at line 103 of file OSGFieldContainerImpl.inl.
References osg::FieldContainerType::findFieldDescription(), osg::FieldDescription::getField(), and osg::FieldContainer::getType().
00104 { 00105 const FieldDescription *desc =getType().findFieldDescription(fieldName); 00106 00107 return desc ? desc->getField(*this) : NULL; 00108 }
| void osg::FieldContainer::newPtr | ( | ObjectPtrT & | result, | |
| const typename ObjectPtrT::StoredObjectType * | prototypeP | |||
| ) | [inline, static, protected, inherited] |
Definition at line 138 of file OSGFieldContainerImpl.inl.
References osg::ChangeList::addCreated(), osg::PThreadBase::getAspect(), osg::PThreadBase::getCurrentChangeList(), osg::ThreadManager::getNumAspects(), osg::FieldContainerFactory::registerFieldContainer(), and osg::FieldContainerFactory::the().
Referenced by osg::XWindowBase::createEmpty(), osg::WIN32WindowBase::createEmpty(), osg::ViewportBase::createEmpty(), osg::VertexProgramChunkBase::createEmpty(), osg::TwoSidedLightingChunkBase::createEmpty(), osg::TransformChunkBase::createEmpty(), osg::TransformBase::createEmpty(), osg::TileCameraDecoratorBase::createEmpty(), osg::TextureTransformChunkBase::createEmpty(), osg::TextureGrabForegroundBase::createEmpty(), osg::TextureGrabBackgroundBase::createEmpty(), osg::TextureChunkBase::createEmpty(), osg::TextureBackgroundBase::createEmpty(), osg::TexGenChunkBase::createEmpty(), osg::SwitchMaterialBase::createEmpty(), osg::SwitchBase::createEmpty(), osg::SurfaceBase::createEmpty(), osg::StringAttributeMapBase::createEmpty(), osg::StereoBufferViewportBase::createEmpty(), osg::StencilChunkBase::createEmpty(), osg::StateSortingGroupBase::createEmpty(), osg::StateBase::createEmpty(), osg::SpotLightBase::createEmpty(), osg::SortFirstWindowBase::createEmpty(), osg::SolidBackgroundBase::createEmpty(), osg::SlicesBase::createEmpty(), osg::SkyBackgroundBase::createEmpty(), osg::SimpleTexturedMaterialBase::createEmpty(), osg::SimpleStatisticsForegroundBase::createEmpty(), osg::SimpleMaterialBase::createEmpty(), osg::SHLParameterChunkBase::createEmpty(), osg::SHLChunkBase::createEmpty(), createEmpty(), osg::ShaderParameterVec4fBase::createEmpty(), osg::ShaderParameterVec3fBase::createEmpty(), osg::ShaderParameterVec2fBase::createEmpty(), osg::ShaderParameterStringBase::createEmpty(), osg::ShaderParameterRealBase::createEmpty(), osg::ShaderParameterMVec4fBase::createEmpty(), osg::ShaderParameterMVec3fBase::createEmpty(), osg::ShaderParameterMVec2fBase::createEmpty(), osg::ShaderParameterMRealBase::createEmpty(), osg::ShaderParameterMMatrixBase::createEmpty(), osg::ShaderParameterMIntBase::createEmpty(), osg::ShaderParameterMatrixBase::createEmpty(), osg::ShaderParameterIntBase::createEmpty(), osg::ShaderParameterBoolBase::createEmpty(), osg::ScreenGroupBase::createEmpty(), osg::SClipPlaneChunkBase::createEmpty(), osg::ResolutionDisplayFilterBase::createEmpty(), osg::RenderOptionsBase::createEmpty(), osg::RegisterCombinersChunkBase::createEmpty(), osg::QTWindowBase::createEmpty(), osg::ProxyGroupBase::createEmpty(), osg::ProjectionCameraDecoratorBase::createEmpty(), osg::PolygonForegroundBase::createEmpty(), osg::PolygonChunkBase::createEmpty(), osg::PolygonBackgroundBase::createEmpty(), osg::PointLightBase::createEmpty(), osg::PointChunkBase::createEmpty(), osg::PhongMaterialBase::createEmpty(), osg::PerspectiveCameraBase::createEmpty(), osg::PassiveWindowBase::createEmpty(), osg::PassiveViewportBase::createEmpty(), osg::PassiveBackgroundBase::createEmpty(), osg::ParticlesBase::createEmpty(), osg::OrthographicCameraBase::createEmpty(), osg::OffCenterPerspectiveCameraBase::createEmpty(), osg::MultiPassMaterialBase::createEmpty(), osg::MultiDisplayWindowBase::createEmpty(), osg::MatrixCameraDecoratorBase::createEmpty(), osg::MatrixCameraBase::createEmpty(), osg::MaterialPoolBase::createEmpty(), osg::MaterialGroupBase::createEmpty(), osg::MaterialChunkBase::createEmpty(), osg::LogicOpChunkBase::createEmpty(), osg::LineChunkBase::createEmpty(), osg::LightModelChunkBase::createEmpty(), osg::LightEnvBase::createEmpty(), osg::LightChunkBase::createEmpty(), osg::InverseTransformBase::createEmpty(), osg::InlineBase::createEmpty(), osg::ImageForegroundBase::createEmpty(), osg::ImageBase::createEmpty(), osg::ImageBackgroundBase::createEmpty(), osg::GroupBase::createEmpty(), osg::GraphicStatisticsForegroundBase::createEmpty(), osg::GradientBackgroundBase::createEmpty(), osg::GrabForegroundBase::createEmpty(), osg::GLUTWindowBase::createEmpty(), osg::GeometryBase::createEmpty(), osg::FresnelMaterialBase::createEmpty(), osg::FragmentProgramChunkBase::createEmpty(), osg::FileGrabForegroundBase::createEmpty(), osg::FCPtrAttributeMapBase::createEmpty(), osg::FBOViewportBase::createEmpty(), osg::FatBorderChunkBase::createEmpty(), osg::DVRVolumeTextureBase::createEmpty(), osg::DVRVolumeBase::createEmpty(), osg::DVRSimpleShaderBase::createEmpty(), osg::DVRSimpleLUTShaderBase::createEmpty(), osg::DVRMtexLUTShaderBase::createEmpty(), osg::DVRLookupTableBase::createEmpty(), osg::DVRIsoSurfaceBase::createEmpty(), osg::DVRIsoShaderBase::createEmpty(), osg::DVRGeometryBase::createEmpty(), osg::DVRClipObjectsBase::createEmpty(), osg::DVRClipGeometryBase::createEmpty(), osg::DVRAppearanceBase::createEmpty(), osg::DistortionDisplayFilterBase::createEmpty(), osg::DistanceLODBase::createEmpty(), osg::DisplayFilterForegroundBase::createEmpty(), osg::DisplayCalibrationBase::createEmpty(), osg::DirectionalLightBase::createEmpty(), osg::DepthClearBackgroundBase::createEmpty(), osg::DepthChunkBase::createEmpty(), osg::CubeTextureChunkBase::createEmpty(), osg::ComponentTransformBase::createEmpty(), osg::ColorMaskChunkBase::createEmpty(), osg::ColorDisplayFilterBase::createEmpty(), osg::ColorBufferViewportBase::createEmpty(), osg::ClusterWindowBase::createEmpty(), osg::ClipPlaneChunkBase::createEmpty(), osg::ClipPlaneBase::createEmpty(), osg::ChunkMaterialBase::createEmpty(), osg::BlendChunkBase::createEmpty(), osg::BillboardBase::createEmpty(), osg::XWindowBase::shallowCopy(), osg::WIN32WindowBase::shallowCopy(), osg::ViewportBase::shallowCopy(), osg::VertexProgramChunkBase::shallowCopy(), osg::TwoSidedLightingChunkBase::shallowCopy(), osg::TransformChunkBase::shallowCopy(), osg::TransformBase::shallowCopy(), osg::TileCameraDecoratorBase::shallowCopy(), osg::TextureTransformChunkBase::shallowCopy(), osg::TextureGrabForegroundBase::shallowCopy(), osg::TextureGrabBackgroundBase::shallowCopy(), osg::TextureChunkBase::shallowCopy(), osg::TextureBackgroundBase::shallowCopy(), osg::TexGenChunkBase::shallowCopy(), osg::SwitchMaterialBase::shallowCopy(), osg::SwitchBase::shallowCopy(), osg::SurfaceBase::shallowCopy(), osg::StringAttributeMapBase::shallowCopy(), osg::StereoBufferViewportBase::shallowCopy(), osg::StencilChunkBase::shallowCopy(), osg::StateSortingGroupBase::shallowCopy(), osg::StateBase::shallowCopy(), osg::SpotLightBase::shallowCopy(), osg::SortFirstWindowBase::shallowCopy(), osg::SolidBackgroundBase::shallowCopy(), osg::SlicesBase::shallowCopy(), osg::SkyBackgroundBase::shallowCopy(), osg::SimpleTexturedMaterialBase::shallowCopy(), osg::SimpleStatisticsForegroundBase::shallowCopy(), osg::SimpleMaterialBase::shallowCopy(), osg::SHLParameterChunkBase::shallowCopy(), osg::SHLChunkBase::shallowCopy(), shallowCopy(), osg::ShaderParameterVec4fBase::shallowCopy(), osg::ShaderParameterVec3fBase::shallowCopy(), osg::ShaderParameterVec2fBase::shallowCopy(), osg::ShaderParameterStringBase::shallowCopy(), osg::ShaderParameterRealBase::shallowCopy(), osg::ShaderParameterMVec4fBase::shallowCopy(), osg::ShaderParameterMVec3fBase::shallowCopy(), osg::ShaderParameterMVec2fBase::shallowCopy(), osg::ShaderParameterMRealBase::shallowCopy(), osg::ShaderParameterMMatrixBase::shallowCopy(), osg::ShaderParameterMIntBase::shallowCopy(), osg::ShaderParameterMatrixBase::shallowCopy(), osg::ShaderParameterIntBase::shallowCopy(), osg::ShaderParameterBoolBase::shallowCopy(), osg::ScreenGroupBase::shallowCopy(), osg::SClipPlaneChunkBase::shallowCopy(), osg::ResolutionDisplayFilterBase::shallowCopy(), osg::RenderOptionsBase::shallowCopy(), osg::RegisterCombinersChunkBase::shallowCopy(), osg::QTWindowBase::shallowCopy(), osg::ProxyGroupBase::shallowCopy(), osg::ProjectionCameraDecoratorBase::shallowCopy(), osg::PolygonForegroundBase::shallowCopy(), osg::PolygonChunkBase::shallowCopy(), osg::PolygonBackgroundBase::shallowCopy(), osg::PointLightBase::shallowCopy(), osg::PointChunkBase::shallowCopy(), osg::PhongMaterialBase::shallowCopy(), osg::PerspectiveCameraBase::shallowCopy(), osg::PassiveWindowBase::shallowCopy(), osg::PassiveViewportBase::shallowCopy(), osg::PassiveBackgroundBase::shallowCopy(), osg::ParticlesBase::shallowCopy(), osg::OrthographicCameraBase::shallowCopy(), osg::OffCenterPerspectiveCameraBase::shallowCopy(), osg::MultiPassMaterialBase::shallowCopy(), osg::MultiDisplayWindowBase::shallowCopy(), osg::MatrixCameraDecoratorBase::shallowCopy(), osg::MatrixCameraBase::shallowCopy(), osg::MaterialPoolBase::shallowCopy(), osg::MaterialGroupBase::shallowCopy(), osg::MaterialChunkBase::shallowCopy(), osg::LogicOpChunkBase::shallowCopy(), osg::LineChunkBase::shallowCopy(), osg::LightModelChunkBase::shallowCopy(), osg::LightEnvBase::shallowCopy(), osg::LightChunkBase::shallowCopy(), osg::InverseTransformBase::shallowCopy(), osg::InlineBase::shallowCopy(), osg::ImageForegroundBase::shallowCopy(), osg::ImageBase::shallowCopy(), osg::ImageBackgroundBase::shallowCopy(), osg::GroupBase::shallowCopy(), osg::GraphicStatisticsForegroundBase::shallowCopy(), osg::GradientBackgroundBase::shallowCopy(), osg::GrabForegroundBase::shallowCopy(), osg::GLUTWindowBase::shallowCopy(), osg::GeometryBase::shallowCopy(), osg::FresnelMaterialBase::shallowCopy(), osg::FragmentProgramChunkBase::shallowCopy(), osg::FileGrabForegroundBase::shallowCopy(), osg::FCPtrAttributeMapBase::shallowCopy(), osg::FBOViewportBase::shallowCopy(), osg::FatBorderChunkBase::shallowCopy(), osg::DVRVolumeTextureBase::shallowCopy(), osg::DVRVolumeBase::shallowCopy(), osg::DVRSimpleShaderBase::shallowCopy(), osg::DVRSimpleLUTShaderBase::shallowCopy(), osg::DVRMtexLUTShaderBase::shallowCopy(), osg::DVRLookupTableBase::shallowCopy(), osg::DVRIsoSurfaceBase::shallowCopy(), osg::DVRIsoShaderBase::shallowCopy(), osg::DVRGeometryBase::shallowCopy(), osg::DVRClipObjectsBase::shallowCopy(), osg::DVRClipGeometryBase::shallowCopy(), osg::DVRAppearanceBase::shallowCopy(), osg::DistortionDisplayFilterBase::shallowCopy(), osg::DistanceLODBase::shallowCopy(), osg::DisplayFilterForegroundBase::shallowCopy(), osg::DisplayCalibrationBase::shallowCopy(), osg::DirectionalLightBase::shallowCopy(), osg::DepthClearBackgroundBase::shallowCopy(), osg::DepthChunkBase::shallowCopy(), osg::CubeTextureChunkBase::shallowCopy(), osg::ComponentTransformBase::shallowCopy(), osg::ColorMaskChunkBase::shallowCopy(), osg::ColorDisplayFilterBase::shallowCopy(), osg::ColorBufferViewportBase::shallowCopy(), osg::ClusterWindowBase::shallowCopy(), osg::ClipPlaneChunkBase::shallowCopy(), osg::ClipPlaneBase::shallowCopy(), osg::ChunkMaterialBase::shallowCopy(), osg::BlendChunkBase::shallowCopy(), and osg::BillboardBase::shallowCopy().
00141 { 00142 typedef typename ObjectPtrT::StoredObjectType ObjectType; 00143 00144 UInt8 *pTmp; 00145 00146 result._containerSize = sizeof(ObjectType); 00147 00148 pTmp = 00149 static_cast<UInt8 *>(operator new( 00150 sizeof(Int32) + // ReferenceCount 00151 sizeof(UInt32) + // ContainerId 00152 sizeof(ObjectType) * ThreadManager::getNumAspects())); 00153 00154 *(reinterpret_cast<Int32 *>(pTmp)) = 0; 00155 00156 pTmp += sizeof(Int32); 00157 00158 result._storeP = (pTmp + sizeof(UInt32)); 00159 00160 #ifdef OSG_DEBUG_FCPTR 00161 result._typedStoreP = reinterpret_cast<FieldContainer *>(result._storeP); 00162 #endif 00163 00164 *(reinterpret_cast<UInt32 *>(pTmp)) = 00165 FieldContainerFactory::the()->registerFieldContainer(result); 00166 00167 Thread::getCurrentChangeList()->addCreated( 00168 *(reinterpret_cast<UInt32 *>(pTmp))); 00169 00170 pTmp += sizeof(UInt32); 00171 00172 ObjectType *aObject = reinterpret_cast<ObjectType *>(pTmp); 00173 00174 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00175 { 00176 pTmp = 00177 reinterpret_cast<UInt8 *>(new (pTmp) ObjectType(*prototypeP)); 00178 00179 pTmp += sizeof(ObjectType); 00180 } 00181 00182 result->onCreate(prototypeP); 00183 00184 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00185 { 00186 aObject[i].onCreateAspect(aObject, prototypeP); 00187 } 00188 00189 #if defined(OSG_GV_BETA) && defined(OSG_DBG_MEM) 00190 00191 fprintf(stderr, "GV_MEM_FC_DBG : (%u) cc (%p|%u)\n", 00192 Thread::getAspect(), 00193 result._storeP, 00194 // ObjectType::getClassType().getCName(), 00195 ObjectType::getClassType().getId()); 00196 #endif 00197 00198 #ifdef OSG_DEBUG_TYPED_FCPTR 00199 result.updateTypedStore(); 00200 #endif 00201 }
| void osg::FieldContainer::newPtr | ( | ObjectPtrT & | result | ) | [inline, static, protected, inherited] |
Definition at line 204 of file OSGFieldContainerImpl.inl.
References osg::ChangeList::addCreated(), osg::PThreadBase::getAspect(), osg::PThreadBase::getCurrentChangeList(), osg::ThreadManager::getNumAspects(), osg::FieldContainerFactory::registerFieldContainer(), and osg::FieldContainerFactory::the().
00205 { 00206 typedef typename ObjectPtrT::StoredObjectType ObjectType; 00207 00208 UInt8 *pTmp; 00209 00210 result._containerSize = sizeof(ObjectType); 00211 00212 pTmp = 00213 static_cast<UInt8 *>(operator new( 00214 sizeof(Int32) + // ReferenceCount 00215 sizeof(UInt32) + // ContainerId 00216 sizeof(ObjectType) * ThreadManager::getNumAspects())); 00217 00218 *(reinterpret_cast<Int32 *>(pTmp)) = 0; 00219 00220 pTmp += sizeof(Int32); 00221 00222 result._storeP = (pTmp + sizeof(UInt32)); 00223 00224 #ifdef OSG_DEBUG_FCPTR 00225 result._typedStoreP = reinterpret_cast<FieldContainer *>(result._storeP); 00226 #endif 00227 00228 *(reinterpret_cast<UInt32 *>(pTmp)) = 00229 FieldContainerFactory::the()->registerFieldContainer(result); 00230 00231 Thread::getCurrentChangeList()->addCreated( 00232 *(reinterpret_cast<UInt32 *>(pTmp))); 00233 00234 pTmp += sizeof(UInt32); 00235 00236 ObjectType *aObject = reinterpret_cast<ObjectType *>(pTmp); 00237 00238 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00239 { 00240 pTmp = reinterpret_cast<UInt8 *>(new (pTmp) ObjectType()); 00241 00242 pTmp += sizeof(ObjectType); 00243 } 00244 00245 result->onCreate(); 00246 00247 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00248 { 00249 aObject[i].onCreateAspect(aObject); 00250 } 00251 00252 #if defined(OSG_GV_BETA) && defined(OSG_DBG_MEM) 00253 fprintf(stderr, "GV_MEM_FC_DBG : (%u) c (%p|%u)\n", 00254 Thread::getAspect(), 00255 result._storeP, 00256 // ObjectType::getClassType().getCName(), 00257 ObjectType::getClassType().getId()); 00258 #endif 00259 00260 #ifdef OSG_DEBUG_TYPED_FCPTR 00261 result.updateTypedStore(); 00262 #endif 00263 }
| void osg::FieldContainer::beginEditX | ( | const BitVector & | whichField, | |
| FieldTypeT & | field | |||
| ) | [inline, protected, inherited] |
| void osg::FieldContainer::endEditX | ( | const BitVector & | whichField, | |
| FieldTypeT & | field | |||
| ) | [inline, protected, inherited] |
Definition at line 291 of file OSGFieldContainerImpl.inl.
References osg::endEditCP().
00292 { 00293 FieldContainerPtr tmpPtr(this); 00294 endEditCP(tmpPtr, whichField); 00295 }
| void osg::FieldContainer::onCreate | ( | const FieldContainer * | source = NULL |
) | [inline, protected, inherited] |
Definition at line 318 of file OSGFieldContainerImpl.inl.
Referenced by osg::ShaderParameterChunk::onCreate().
| void osg::FieldContainer::onCreateAspect | ( | const FieldContainer * | aspect0, | |
| const FieldContainer * | source = NULL | |||
| ) | [inline, protected, inherited] |
| void FieldContainer::onDestroy | ( | void | ) | [protected, virtual, inherited] |
Reimplemented in osg::NodeCore, osg::Attachment, osg::Geometry, osg::Surface, osg::MaterialPool, osg::CubeTextureChunk, osg::TextureChunk, osg::FBOViewport, osg::Window, osg::ShaderParameterChunk, and osg::SHLChunk.
Definition at line 98 of file OSGFieldContainer.cpp.
friend class FieldContainer [friend] |
Reimplemented from osg::StereoCameraDecorator.
Reimplemented in osg::ShearedStereoCameraDecorator.
Definition at line 238 of file OSGShearedStereoCameraDecoratorBase.h.
Initial value:
(TypeTraits<BitVector>::One << ShearedStereoCameraDecoratorBase::ZeroParallaxDistanceFieldId)
Definition at line 100 of file OSGShearedStereoCameraDecoratorBase.h.
Referenced by copyFromBin(), copyToBin(), executeSyncImpl(), and getBinSize().
const osg::BitVector ShearedStereoCameraDecoratorBase::OverlapFieldMask [static] |
Initial value:
(TypeTraits<BitVector>::One << ShearedStereoCameraDecoratorBase::OverlapFieldId)
Definition at line 101 of file OSGShearedStereoCameraDecoratorBase.h.
Referenced by copyFromBin(), copyToBin(), executeSyncImpl(), and getBinSize().
const osg::BitVector ShearedStereoCameraDecoratorBase::MTInfluenceMask [static] |
Initial value:
(Inherited::MTInfluenceMask) |
(static_cast<BitVector>(0x0) << Inherited::NextFieldId)
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 104 of file OSGShearedStereoCameraDecoratorBase.h.
The distance to the zero parallax plane.
Definition at line 185 of file OSGShearedStereoCameraDecoratorBase.h.
Referenced by copyFromBin(), copyToBin(), executeSyncImpl(), getBinSize(), getSFZeroParallaxDistance(), getZeroParallaxDistance(), and setZeroParallaxDistance().
Real32 ShearedStereoCameraDecoratorBase::_sfOverlap [protected] |
The overlap between left and right eye.
Definition at line 186 of file OSGShearedStereoCameraDecoratorBase.h.
Referenced by copyFromBin(), copyToBin(), executeSyncImpl(), getBinSize(), getOverlap(), getSFOverlap(), and setOverlap().
FieldDescription * ShearedStereoCameraDecoratorBase::_desc [static, private] |
Initial value:
{
new FieldDescription(SFReal32::getClassType(),
"zeroParallaxDistance",
ZeroParallaxDistanceFieldId, ZeroParallaxDistanceFieldMask,
false,
(FieldAccessMethod) &ShearedStereoCameraDecoratorBase::getSFZeroParallaxDistance),
new FieldDescription(SFReal32::getClassType(),
"overlap",
OverlapFieldId, OverlapFieldMask,
false,
(FieldAccessMethod) &ShearedStereoCameraDecoratorBase::getSFOverlap)
}
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 240 of file OSGShearedStereoCameraDecoratorBase.h.
FieldContainerType ShearedStereoCameraDecoratorBase::_type [static, private] |
Reimplemented from osg::StereoCameraDecoratorBase.
Definition at line 241 of file OSGShearedStereoCameraDecoratorBase.h.
Referenced by getClassType(), getClassTypeId(), and getType().
const osg::BitVector StereoCameraDecoratorBase::LeftEyeFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << StereoCameraDecoratorBase::LeftEyeFieldId)
Definition at line 100 of file OSGStereoCameraDecoratorBase.h.
Referenced by osg::StereoCameraDecoratorBase::copyFromBin(), osg::StereoCameraDecoratorBase::copyToBin(), osg::StereoCameraDecoratorBase::executeSyncImpl(), and osg::StereoCameraDecoratorBase::getBinSize().
const osg::BitVector StereoCameraDecoratorBase::EyeSeparationFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << StereoCameraDecoratorBase::EyeSeparationFieldId)
Definition at line 101 of file OSGStereoCameraDecoratorBase.h.
Referenced by osg::StereoCameraDecoratorBase::copyFromBin(), osg::StereoCameraDecoratorBase::copyToBin(), osg::StereoCameraDecoratorBase::executeSyncImpl(), and osg::StereoCameraDecoratorBase::getBinSize().
bool StereoCameraDecoratorBase::_sfLeftEye [protected, inherited] |
Flag to distinguish between left and right eye views.
Definition at line 169 of file OSGStereoCameraDecoratorBase.h.
Referenced by osg::StereoCameraDecoratorBase::copyFromBin(), osg::StereoCameraDecoratorBase::copyToBin(), osg::StereoCameraDecoratorBase::executeSyncImpl(), osg::StereoCameraDecoratorBase::getBinSize(), osg::StereoCameraDecoratorBase::getLeftEye(), osg::StereoCameraDecoratorBase::getSFLeftEye(), and osg::StereoCameraDecoratorBase::setLeftEye().
Real32 StereoCameraDecoratorBase::_sfEyeSeparation [protected, inherited] |
The distance between the two eyes.
Definition at line 170 of file OSGStereoCameraDecoratorBase.h.
Referenced by osg::StereoCameraDecoratorBase::copyFromBin(), osg::StereoCameraDecoratorBase::copyToBin(), osg::StereoCameraDecoratorBase::executeSyncImpl(), osg::StereoCameraDecoratorBase::getBinSize(), osg::StereoCameraDecoratorBase::getEyeSeparation(), osg::StereoCameraDecoratorBase::getSFEyeSeparation(), and osg::StereoCameraDecoratorBase::setEyeSeparation().
const osg::BitVector CameraDecoratorBase::DecorateeFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << CameraDecoratorBase::DecorateeFieldId)
Definition at line 98 of file OSGCameraDecoratorBase.h.
Referenced by osg::CameraDecoratorBase::copyFromBin(), osg::CameraDecoratorBase::copyToBin(), osg::CameraDecoratorBase::executeSyncImpl(), and osg::CameraDecoratorBase::getBinSize().
CameraPtr CameraDecoratorBase::_sfDecoratee [protected, inherited] |
The object being decorated
Definition at line 173 of file OSGCameraDecoratorBase.h.
Referenced by osg::CameraDecoratorBase::copyFromBin(), osg::CameraDecoratorBase::copyToBin(), osg::CameraDecoratorBase::executeSyncImpl(), osg::CameraDecoratorBase::getBinSize(), osg::CameraDecoratorBase::getDecoratee(), osg::CameraDecoratorBase::getSFDecoratee(), and osg::CameraDecoratorBase::setDecoratee().
const osg::BitVector CameraBase::BeaconFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << CameraBase::BeaconFieldId)
Definition at line 102 of file OSGCameraBase.h.
Referenced by osg::CameraBase::copyFromBin(), osg::CameraBase::copyToBin(), osg::CameraBase::executeSyncImpl(), osg::CameraBase::getBinSize(), and osg::CameraDecoratorBase::setBeacon().
const osg::BitVector CameraBase::NearFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << CameraBase::NearFieldId)
Definition at line 103 of file OSGCameraBase.h.
Referenced by osg::CameraBase::copyFromBin(), osg::CameraBase::copyToBin(), osg::CameraBase::executeSyncImpl(), osg::CameraBase::getBinSize(), and osg::CameraDecoratorBase::setNear().
const osg::BitVector CameraBase::FarFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << CameraBase::FarFieldId)
Definition at line 104 of file OSGCameraBase.h.
Referenced by osg::CameraBase::copyFromBin(), osg::CameraBase::copyToBin(), osg::CameraBase::executeSyncImpl(), osg::CameraBase::getBinSize(), and osg::CameraDecoratorBase::setFar().
NodePtr CameraBase::_sfBeacon [protected, inherited] |
The object that define's the camera's coordinate system. The camera is positioned at the origin of the system and looks doen the negative z-axis (OpenGL-style).
Definition at line 176 of file OSGCameraBase.h.
Referenced by osg::CameraBase::copyFromBin(), osg::CameraBase::copyToBin(), osg::CameraBase::executeSyncImpl(), osg::CameraBase::getBeacon(), osg::CameraBase::getBinSize(), osg::CameraBase::getSFBeacon(), and osg::CameraBase::setBeacon().
Real32 CameraBase::_sfNear [protected, inherited] |
The near distance of the camera.
Definition at line 177 of file OSGCameraBase.h.
Referenced by osg::CameraBase::copyFromBin(), osg::CameraBase::copyToBin(), osg::CameraBase::executeSyncImpl(), osg::CameraBase::getBinSize(), osg::CameraBase::getNear(), osg::CameraBase::getSFNear(), and osg::CameraBase::setNear().
Real32 CameraBase::_sfFar [protected, inherited] |
The far distance of the camera.
Definition at line 178 of file OSGCameraBase.h.
Referenced by osg::CameraBase::copyFromBin(), osg::CameraBase::copyToBin(), osg::CameraBase::executeSyncImpl(), osg::CameraBase::getBinSize(), osg::CameraBase::getFar(), osg::CameraBase::getSFFar(), and osg::CameraBase::setFar().
const BitVector AttachmentContainer::AttachmentsFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One <<
AttachmentContainer::AttachmentsFieldId)
Definition at line 84 of file OSGAttachmentContainerImpl.h.
Referenced by osg::VRMLFile::beginNode(), osg::AttachmentContainer::changed(), osg::AttachmentContainer::copyFromBin(), osg::AttachmentContainer::copyToBin(), osg::deepCloneAttachments(), osg::AttachmentContainer::executeSyncImpl(), osg::fcptrAttributeMap(), osg::AttachmentContainer::getBinSize(), and osg::stringAttributeMap().
SFAttachmentMap osg::AttachmentContainer::_attachmentMap [protected, inherited] |
Definition at line 161 of file OSGAttachmentContainerImpl.h.
Referenced by osg::AttachmentContainer::AttachmentContainer(), osg::AttachmentContainer::changed(), osg::AttachmentContainer::copyFromBin(), osg::AttachmentContainer::copyToBin(), osg::NodeCore::dump(), osg::Node::dump(), osg::Geometry::dump(), osg::AttachmentContainer::dump(), osg::AttachmentContainer::executeSyncImpl(), osg::AttachmentContainer::findAttachment(), osg::AttachmentContainer::getBinSize(), osg::AttachmentContainer::getSFAttachments(), osg::Node::onCreate(), osg::AttachmentContainer::subAttachment(), and osg::AttachmentContainer::~AttachmentContainer().
const BitVector osg::FieldContainer::NextFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << NextFieldId)
Definition at line 75 of file OSGFieldContainerImpl.h.
const bool osg::FieldContainer::isNodeCore = false [static, inherited] |
UInt32 osg::FieldContainer::_shares [protected, inherited] |
Definition at line 199 of file OSGFieldContainerImpl.h.
1.5.5