OrthographicCamera class. See PageSystemOrthographicCamera for a description. More...
#include <OSGOrthographicCamera.h>
Public Types | |
| enum | { VerticalSizeFieldId = Inherited::NextFieldId, HorizontalSizeFieldId = VerticalSizeFieldId + 1, AspectFieldId = HorizontalSizeFieldId + 1, NextFieldId = AspectFieldId + 1 } |
| typedef OrthographicCameraPtr | Ptr |
| 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 | |
Sync | |
| virtual void | changed (BitVector whichField, UInt32 origin) |
Camera-specific | |
| virtual void | draw (DrawAction *action, const Viewport &port) |
| virtual void | getProjection (Matrix &result, UInt32 width, UInt32 height) |
Output | |
| 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 |
Field Get | |
| SFReal32 * | editSFVerticalSize (void) |
| Get the OrthographicCamera::_sfVerticalSize field. | |
| const SFReal32 * | getSFVerticalSize (void) const |
| Get the OrthographicCamera::_sfVerticalSize field. | |
| SFReal32 * | getSFVerticalSize (void) |
| Get the OrthographicCamera::_sfVerticalSize field. | |
| SFReal32 * | editSFHorizontalSize (void) |
| Get the OrthographicCamera::_sfHorizontalSize field. | |
| const SFReal32 * | getSFHorizontalSize (void) const |
| Get the OrthographicCamera::_sfHorizontalSize field. | |
| SFReal32 * | getSFHorizontalSize (void) |
| Get the OrthographicCamera::_sfHorizontalSize field. | |
| SFReal32 * | editSFAspect (void) |
| Get the OrthographicCamera::_sfAspect field. | |
| const SFReal32 * | getSFAspect (void) const |
| Get the OrthographicCamera::_sfAspect field. | |
| SFReal32 * | getSFAspect (void) |
| Get the OrthographicCamera::_sfAspect field. | |
| Real32 & | editVerticalSize (void) |
| Get the value of the OrthographicCamera::_sfVerticalSize field. | |
| const Real32 & | getVerticalSize (void) const |
| Get the value of the OrthographicCamera::_sfVerticalSize field. | |
| Real32 & | getVerticalSize (void) |
| Get the value of the OrthographicCamera::_sfVerticalSize field. | |
| Real32 & | editHorizontalSize (void) |
| Get the value of the OrthographicCamera::_sfHorizontalSize field. | |
| const Real32 & | getHorizontalSize (void) const |
| Get the value of the OrthographicCamera::_sfHorizontalSize field. | |
| Real32 & | getHorizontalSize (void) |
| Get the value of the OrthographicCamera::_sfHorizontalSize field. | |
| Real32 & | editAspect (void) |
| Get the value of the OrthographicCamera::_sfAspect field. | |
| const Real32 & | getAspect (void) const |
| Get the value of the OrthographicCamera::_sfAspect field. | |
| Real32 & | getAspect (void) |
| Get the value of the OrthographicCamera::_sfAspect field. | |
Field Set | |
| void | setVerticalSize (const Real32 &value) |
| Set the value of the OrthographicCamera::_sfVerticalSize field. | |
| void | setHorizontalSize (const Real32 &value) |
| Set the value of the OrthographicCamera::_sfHorizontalSize field. | |
| void | setAspect (const Real32 &value) |
| Set the value of the OrthographicCamera::_sfAspect 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 |
Setup Rendering | |
| virtual void | setup (DrawActionBase *action, const Viewport &port) |
| virtual void | setupProjection (DrawActionBase *action, const Viewport &port) |
Access Parameters | |
| virtual void | getProjectionTranslation (Matrix &result, UInt32 width, UInt32 height) |
| virtual void | getViewing (Matrix &result, UInt32 width, UInt32 height) |
| 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, Real32 *t=NULL) |
Field Get | |
| virtual SFNodePtr * | editSFBeacon (void) |
| virtual const SFNodePtr * | getSFBeacon (void) const |
| virtual SFNodePtr * | getSFBeacon (void) |
| virtual SFReal32 * | editSFNear (void) |
| virtual const SFReal32 * | getSFNear (void) const |
| virtual SFReal32 * | getSFNear (void) |
| virtual SFReal32 * | editSFFar (void) |
| virtual const SFReal32 * | getSFFar (void) const |
| virtual SFReal32 * | getSFFar (void) |
| virtual NodePtr & | editBeacon (void) |
| virtual const NodePtr & | getBeacon (void) const |
| virtual NodePtr & | getBeacon (void) |
| virtual Real32 & | editNear (void) |
| virtual const Real32 & | getNear (void) const |
| virtual Real32 & | getNear (void) |
| virtual Real32 & | editFar (void) |
| virtual const Real32 & | getFar (void) const |
| virtual Real32 & | getFar (void) |
Field Set | |
| virtual void | setBeacon (const NodePtr &value) |
| virtual void | setNear (const Real32 &value) |
| virtual void | setFar (const Real32 &value) |
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 OrthographicCameraPtr | create (void) |
| create a new instance of the class | |
| static OrthographicCameraPtr | 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 | VerticalSizeFieldMask |
| static const osg::BitVector | HorizontalSizeFieldMask |
| static const osg::BitVector | AspectFieldMask |
| static const osg::BitVector | MTInfluenceMask |
| 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 | |
| OrthographicCamera (void) | |
| OrthographicCamera (const OrthographicCamera &source) | |
Destructors | |
| virtual | ~OrthographicCamera (void) |
Sync | |
| void | executeSyncImpl (OrthographicCameraBase *pOther, const BitVector &whichField) |
| virtual void | executeSync (FieldContainer &other, const BitVector &whichField) |
Sync | |
| virtual void | executeSync (FieldContainer &other, const BitVector &whichField)=0 |
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 | _sfVerticalSize |
| SFReal32 | _sfHorizontalSize |
| SFReal32 | _sfAspect |
Fields | |
| SFNodePtr | _sfBeacon |
| SFReal32 | _sfNear |
| SFReal32 | _sfFar |
Fields | |
| SFAttachmentMap | _attachmentMap |
Member | |
| UInt32 | _shares |
Private Types | |
| typedef OrthographicCameraBase | Inherited |
Private Member Functions | |
| void | operator= (const OrthographicCamera &source) |
| prohibit default functions (move to 'public' if needed) | |
Static Private Member Functions | |
| static void | initMethod (void) |
Friends | |
| class | FieldContainer |
| class | OrthographicCameraBase |
An orthographic camera.
Definition at line 55 of file OSGOrthographicCamera.h.
typedef OrthographicCameraBase osg::OrthographicCamera::Inherited [private] |
Reimplemented from osg::OrthographicCameraBase.
Definition at line 59 of file OSGOrthographicCamera.h.
typedef OrthographicCameraPtr osg::OrthographicCameraBase::Ptr [inherited] |
Reimplemented from osg::CameraBase.
Definition at line 92 of file OSGOrthographicCameraBase.h.
anonymous enum [inherited] |
Definition at line 94 of file OSGOrthographicCameraBase.h.
00095 { 00096 VerticalSizeFieldId = Inherited::NextFieldId, 00097 HorizontalSizeFieldId = VerticalSizeFieldId + 1, 00098 AspectFieldId = HorizontalSizeFieldId + 1, 00099 NextFieldId = AspectFieldId + 1 00100 };
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] |
Definition at line 73 of file OSGFieldContainerImpl.h.
00073 { NextFieldId = 1 };
| OrthographicCamera::OrthographicCamera | ( | void | ) | [protected] |
Definition at line 84 of file OSGOrthographicCamera.cpp.
00084 : 00085 Inherited() 00086 { 00087 }
| OrthographicCamera::OrthographicCamera | ( | const OrthographicCamera & | source | ) | [protected] |
Definition at line 89 of file OSGOrthographicCamera.cpp.
00089 : 00090 Inherited(source) 00091 { 00092 }
| OrthographicCamera::~OrthographicCamera | ( | void | ) | [protected, virtual] |
Definition at line 94 of file OSGOrthographicCamera.cpp.
Reimplemented from osg::Camera.
Definition at line 100 of file OSGOrthographicCamera.cpp.
References osg::Camera::changed().
00101 { 00102 Inherited::changed(whichField, origin); 00103 }
| void OrthographicCamera::draw | ( | DrawAction * | action, | |
| const Viewport & | port | |||
| ) | [virtual] |
Reimplemented from osg::Camera.
Definition at line 107 of file OSGOrthographicCamera.cpp.
Reimplemented from osg::Camera.
Definition at line 112 of file OSGOrthographicCamera.cpp.
References osg::OrthographicCameraBase::getAspect(), osg::CameraBase::getFar(), osg::OrthographicCameraBase::getHorizontalSize(), osg::CameraBase::getNear(), osg::OrthographicCameraBase::getVerticalSize(), osg::MatrixOrthogonal(), and osg::TransformationMatrix< ValueTypeT >::setIdentity().
00114 { 00115 Real32 vs = getVerticalSize() / 2; 00116 Real32 hs = getHorizontalSize() / 2; 00117 00118 // catch some illegal cases 00119 if(((vs <= 0) && (hs <= 0)) || width == 0 || height == 0) 00120 { 00121 result.setIdentity(); 00122 return; 00123 } 00124 00125 Real32 winAspect = width / Real32(height) * getAspect(); 00126 if (vs <= 0) 00127 { 00128 vs = hs / winAspect; 00129 } 00130 else if (hs <= 0) 00131 { 00132 hs = vs * winAspect; 00133 } 00134 else 00135 { 00136 Real32 camAspect = hs / vs; 00137 if (winAspect < camAspect) 00138 vs = hs / winAspect; 00139 else 00140 hs = vs * winAspect; 00141 } 00142 MatrixOrthogonal(result, -hs, hs, 00143 -vs, vs, 00144 getNear(), getFar()); 00145 }
Reimplemented from osg::Camera.
Definition at line 148 of file OSGOrthographicCamera.cpp.
References SLOG.
00150 { 00151 SLOG << "Dump OrthographicCamera NI" << std::endl; 00152 }
| void OrthographicCamera::initMethod | ( | void | ) | [static, private] |
Reimplemented from osg::Camera.
Definition at line 69 of file OSGOrthographicCamera.cpp.
| void osg::OrthographicCamera::operator= | ( | const OrthographicCamera & | source | ) | [private] |
Reimplemented from osg::OrthographicCameraBase.
| osg::FieldContainerType & osg::OrthographicCameraBase::getClassType | ( | void | ) | [inline, static, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 58 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_type.
Referenced by osg::OrthographicCameraBase::create().
00059 { 00060 return _type; 00061 }
| osg::UInt32 osg::OrthographicCameraBase::getClassTypeId | ( | void | ) | [inline, static, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 65 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_type, and osg::TypeBase::getId().
00066 { 00067 return _type.getId(); 00068 }
| FieldContainerType & osg::OrthographicCameraBase::getType | ( | void | ) | [virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 128 of file OSGOrthographicCameraBase.cpp.
References osg::OrthographicCameraBase::_type.
00129 { 00130 return _type; 00131 }
| const FieldContainerType & osg::OrthographicCameraBase::getType | ( | void | ) | const [virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 133 of file OSGOrthographicCameraBase.cpp.
References osg::OrthographicCameraBase::_type.
00134 { 00135 return _type; 00136 }
| UInt32 osg::OrthographicCameraBase::getContainerSize | ( | void | ) | const [virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 148 of file OSGOrthographicCameraBase.cpp.
| SFReal32 * osg::OrthographicCameraBase::editSFVerticalSize | ( | void | ) | [inline, inherited] |
Definition at line 108 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfVerticalSize.
00109 { 00110 return &_sfVerticalSize; 00111 }
| const SFReal32 * osg::OrthographicCameraBase::getSFVerticalSize | ( | void | ) | const [inline, inherited] |
Definition at line 101 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfVerticalSize.
00102 { 00103 return &_sfVerticalSize; 00104 }
| SFReal32 * osg::OrthographicCameraBase::getSFVerticalSize | ( | void | ) | [inline, inherited] |
Definition at line 116 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfVerticalSize.
00117 { 00118 return &_sfVerticalSize; 00119 }
| SFReal32 * osg::OrthographicCameraBase::editSFHorizontalSize | ( | void | ) | [inline, inherited] |
Definition at line 131 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfHorizontalSize.
00132 { 00133 return &_sfHorizontalSize; 00134 }
| const SFReal32 * osg::OrthographicCameraBase::getSFHorizontalSize | ( | void | ) | const [inline, inherited] |
Definition at line 124 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfHorizontalSize.
00125 { 00126 return &_sfHorizontalSize; 00127 }
| SFReal32 * osg::OrthographicCameraBase::getSFHorizontalSize | ( | void | ) | [inline, inherited] |
Definition at line 139 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfHorizontalSize.
00140 { 00141 return &_sfHorizontalSize; 00142 }
| SFReal32 * osg::OrthographicCameraBase::editSFAspect | ( | void | ) | [inline, inherited] |
Definition at line 154 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfAspect.
00155 { 00156 return &_sfAspect; 00157 }
| const SFReal32 * osg::OrthographicCameraBase::getSFAspect | ( | void | ) | const [inline, inherited] |
Definition at line 147 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfAspect.
00148 { 00149 return &_sfAspect; 00150 }
| SFReal32 * osg::OrthographicCameraBase::getSFAspect | ( | void | ) | [inline, inherited] |
Definition at line 162 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfAspect.
00163 { 00164 return &_sfAspect; 00165 }
| Real32 & osg::OrthographicCameraBase::editVerticalSize | ( | void | ) | [inline, inherited] |
Definition at line 171 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfVerticalSize, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00172 { 00173 return _sfVerticalSize.getValue(); 00174 }
| const Real32 & osg::OrthographicCameraBase::getVerticalSize | ( | void | ) | const [inline, inherited] |
Definition at line 178 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfVerticalSize, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by getProjection().
00179 { 00180 return _sfVerticalSize.getValue(); 00181 }
| Real32 & osg::OrthographicCameraBase::getVerticalSize | ( | void | ) | [inline, inherited] |
Definition at line 186 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfVerticalSize, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00187 { 00188 return _sfVerticalSize.getValue(); 00189 }
| Real32 & osg::OrthographicCameraBase::editHorizontalSize | ( | void | ) | [inline, inherited] |
Definition at line 201 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfHorizontalSize, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00202 { 00203 return _sfHorizontalSize.getValue(); 00204 }
| const Real32 & osg::OrthographicCameraBase::getHorizontalSize | ( | void | ) | const [inline, inherited] |
Definition at line 208 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfHorizontalSize, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by getProjection().
00209 { 00210 return _sfHorizontalSize.getValue(); 00211 }
| Real32 & osg::OrthographicCameraBase::getHorizontalSize | ( | void | ) | [inline, inherited] |
Definition at line 216 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfHorizontalSize, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00217 { 00218 return _sfHorizontalSize.getValue(); 00219 }
| Real32 & osg::OrthographicCameraBase::editAspect | ( | void | ) | [inline, inherited] |
Definition at line 231 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfAspect, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00232 { 00233 return _sfAspect.getValue(); 00234 }
| const Real32 & osg::OrthographicCameraBase::getAspect | ( | void | ) | const [inline, inherited] |
Definition at line 238 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfAspect, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by getProjection().
00239 { 00240 return _sfAspect.getValue(); 00241 }
| Real32 & osg::OrthographicCameraBase::getAspect | ( | void | ) | [inline, inherited] |
Definition at line 246 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfAspect, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00247 { 00248 return _sfAspect.getValue(); 00249 }
| void osg::OrthographicCameraBase::setVerticalSize | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 194 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfVerticalSize, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00195 { 00196 _sfVerticalSize.setValue(value); 00197 }
| void osg::OrthographicCameraBase::setHorizontalSize | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 224 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfHorizontalSize, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00225 { 00226 _sfHorizontalSize.setValue(value); 00227 }
| void osg::OrthographicCameraBase::setAspect | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 254 of file OSGOrthographicCameraBase.inl.
References osg::OrthographicCameraBase::_sfAspect, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
| UInt32 osg::OrthographicCameraBase::getBinSize | ( | const BitVector & | whichField | ) | [virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 215 of file OSGOrthographicCameraBase.cpp.
References osg::OrthographicCameraBase::_sfAspect, osg::OrthographicCameraBase::_sfHorizontalSize, osg::OrthographicCameraBase::_sfVerticalSize, osg::OrthographicCameraBase::AspectFieldMask, osg::SField< FieldTypeT, fieldNameSpace >::getBinSize(), osg::CameraBase::getBinSize(), osg::OrthographicCameraBase::HorizontalSizeFieldMask, osg::FieldBits::NoField, and osg::OrthographicCameraBase::VerticalSizeFieldMask.
00216 { 00217 UInt32 returnValue = Inherited::getBinSize(whichField); 00218 00219 if(FieldBits::NoField != (VerticalSizeFieldMask & whichField)) 00220 { 00221 returnValue += _sfVerticalSize.getBinSize(); 00222 } 00223 00224 if(FieldBits::NoField != (HorizontalSizeFieldMask & whichField)) 00225 { 00226 returnValue += _sfHorizontalSize.getBinSize(); 00227 } 00228 00229 if(FieldBits::NoField != (AspectFieldMask & whichField)) 00230 { 00231 returnValue += _sfAspect.getBinSize(); 00232 } 00233 00234 00235 return returnValue; 00236 }
| void osg::OrthographicCameraBase::copyToBin | ( | BinaryDataHandler & | pMem, | |
| const BitVector & | whichField | |||
| ) | [virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 238 of file OSGOrthographicCameraBase.cpp.
References osg::OrthographicCameraBase::_sfAspect, osg::OrthographicCameraBase::_sfHorizontalSize, osg::OrthographicCameraBase::_sfVerticalSize, osg::OrthographicCameraBase::AspectFieldMask, osg::SField< FieldTypeT, fieldNameSpace >::copyToBin(), osg::CameraBase::copyToBin(), osg::OrthographicCameraBase::HorizontalSizeFieldMask, osg::FieldBits::NoField, and osg::OrthographicCameraBase::VerticalSizeFieldMask.
00240 { 00241 Inherited::copyToBin(pMem, whichField); 00242 00243 if(FieldBits::NoField != (VerticalSizeFieldMask & whichField)) 00244 { 00245 _sfVerticalSize.copyToBin(pMem); 00246 } 00247 00248 if(FieldBits::NoField != (HorizontalSizeFieldMask & whichField)) 00249 { 00250 _sfHorizontalSize.copyToBin(pMem); 00251 } 00252 00253 if(FieldBits::NoField != (AspectFieldMask & whichField)) 00254 { 00255 _sfAspect.copyToBin(pMem); 00256 } 00257 00258 00259 }
| void osg::OrthographicCameraBase::copyFromBin | ( | BinaryDataHandler & | pMem, | |
| const BitVector & | whichField | |||
| ) | [virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 261 of file OSGOrthographicCameraBase.cpp.
References osg::OrthographicCameraBase::_sfAspect, osg::OrthographicCameraBase::_sfHorizontalSize, osg::OrthographicCameraBase::_sfVerticalSize, osg::OrthographicCameraBase::AspectFieldMask, osg::SField< FieldTypeT, fieldNameSpace >::copyFromBin(), osg::CameraBase::copyFromBin(), osg::OrthographicCameraBase::HorizontalSizeFieldMask, osg::FieldBits::NoField, and osg::OrthographicCameraBase::VerticalSizeFieldMask.
00263 { 00264 Inherited::copyFromBin(pMem, whichField); 00265 00266 if(FieldBits::NoField != (VerticalSizeFieldMask & whichField)) 00267 { 00268 _sfVerticalSize.copyFromBin(pMem); 00269 } 00270 00271 if(FieldBits::NoField != (HorizontalSizeFieldMask & whichField)) 00272 { 00273 _sfHorizontalSize.copyFromBin(pMem); 00274 } 00275 00276 if(FieldBits::NoField != (AspectFieldMask & whichField)) 00277 { 00278 _sfAspect.copyFromBin(pMem); 00279 } 00280 00281 00282 }
| OrthographicCameraPtr osg::OrthographicCameraBase::create | ( | void | ) | [inline, static, inherited] |
Definition at line 72 of file OSGOrthographicCameraBase.inl.
References osg::AttachmentContainerPtr::dcast(), osg::OrthographicCameraBase::getClassType(), osg::NullFC, and osg::OrthographicCameraBase::shallowCopy().
00073 { 00074 OrthographicCameraPtr fc; 00075 00076 if(getClassType().getPrototype() != OSG::NullFC) 00077 { 00078 fc = OrthographicCameraPtr::dcast( 00079 getClassType().getPrototype()-> shallowCopy()); 00080 } 00081 00082 return fc; 00083 }
| OrthographicCameraPtr osg::OrthographicCameraBase::createEmpty | ( | void | ) | [inline, static, inherited] |
Definition at line 87 of file OSGOrthographicCameraBase.inl.
References osg::FieldContainer::newPtr().
00088 { 00089 OrthographicCameraPtr returnValue; 00090 00091 newPtr(returnValue); 00092 00093 return returnValue; 00094 }
| FieldContainerPtr osg::OrthographicCameraBase::shallowCopy | ( | void | ) | const [virtual, inherited] |
Implements osg::FieldContainer.
Definition at line 139 of file OSGOrthographicCameraBase.cpp.
References osg::FieldContainer::newPtr().
Referenced by osg::OrthographicCameraBase::create().
00140 { 00141 OrthographicCameraPtr returnValue; 00142 00143 newPtr(returnValue, dynamic_cast<const OrthographicCamera *>(this)); 00144 00145 return returnValue; 00146 }
| void osg::OrthographicCameraBase::executeSyncImpl | ( | OrthographicCameraBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 285 of file OSGOrthographicCameraBase.cpp.
References osg::OrthographicCameraBase::_sfAspect, osg::OrthographicCameraBase::_sfHorizontalSize, osg::OrthographicCameraBase::_sfVerticalSize, osg::OrthographicCameraBase::AspectFieldMask, osg::CameraBase::executeSyncImpl(), osg::OrthographicCameraBase::HorizontalSizeFieldMask, osg::FieldBits::NoField, osg::SField< FieldTypeT, fieldNameSpace >::syncWith(), and osg::OrthographicCameraBase::VerticalSizeFieldMask.
Referenced by osg::OrthographicCameraBase::executeSync().
00287 { 00288 00289 Inherited::executeSyncImpl(pOther, whichField); 00290 00291 if(FieldBits::NoField != (VerticalSizeFieldMask & whichField)) 00292 _sfVerticalSize.syncWith(pOther->_sfVerticalSize); 00293 00294 if(FieldBits::NoField != (HorizontalSizeFieldMask & whichField)) 00295 _sfHorizontalSize.syncWith(pOther->_sfHorizontalSize); 00296 00297 if(FieldBits::NoField != (AspectFieldMask & whichField)) 00298 _sfAspect.syncWith(pOther->_sfAspect); 00299 00300 00301 }
| void osg::OrthographicCameraBase::executeSync | ( | FieldContainer & | other, | |
| const BitVector & | whichField | |||
| ) | [protected, virtual, inherited] |
Reimplemented from osg::CameraBase.
Definition at line 155 of file OSGOrthographicCameraBase.cpp.
References osg::OrthographicCameraBase::executeSyncImpl().
00157 { 00158 this->executeSyncImpl(static_cast<OrthographicCameraBase *>(&other), 00159 whichField); 00160 }
| virtual void osg::FieldContainer::executeSync | ( | FieldContainer & | other, | |
| const BitVector & | whichField | |||
| ) | [protected, pure virtual, inherited] |
Referenced by osg::FieldContainerPtrBase::executeSync().
| static const char* osg::Camera::getClassname | ( | void | ) | [inline, static, inherited] |
Reimplemented in osg::MatrixCamera, osg::OffCenterPerspectiveCamera, osg::OffsetCameraDecorator, 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::getProjectionTranslation | ( | Matrix & | result, | |
| UInt32 | width, | |||
| UInt32 | height | |||
| ) | [virtual, inherited] |
Get/calculate the projection translation matrix for this camera. The default is identity.
Reimplemented in osg::CameraDecorator, osg::MatrixCameraDecorator, and osg::ProjectionCameraDecorator.
Definition at line 176 of file OSGCamera.cpp.
References osg::TransformationMatrix< ValueTypeT >::setIdentity().
Referenced by osg::Camera::calcViewRay(), osg::SkyBackground::clear(), osg::DVRIsoShader::getCoveredScreenRect(), osg::Camera::getFrustum(), osg::Camera::getWorldToScreen(), osg::Camera::setup(), and osg::Camera::setupProjection().
00179 { 00180 result.setIdentity(); 00181 }
Get/calculate the viewing matrix for this camera. This is the inverse of the beacon's toWorld transformation.
Reimplemented in osg::CameraDecorator, osg::MatrixCamera, osg::MatrixCameraDecorator, and osg::ProjectionCameraDecorator.
Definition at line 186 of file OSGCamera.cpp.
References osg::CameraBase::getBeacon(), osg::TransformationMatrix< ValueTypeT >::invert(), osg::NullFC, and SWARNING.
Referenced by osg::TextureTransformChunk::activate(), osg::TexGenChunk::activate(), osg::Camera::calcViewRay(), osg::TextureTransformChunk::changeFrom(), osg::TexGenChunk::changeFrom(), osg::SkyBackground::clear(), osg::Camera::getFrustum(), osg::Camera::getWorldToScreen(), osg::Camera::setup(), osg::RenderAction::start(), osg::DrawActionBase::start(), osg::RenderAction::stop(), osg::SHLChunk::updateCameraOrientation(), osg::SHLChunk::updateCameraPosition(), osg::SHLChunk::updateInvViewMatrix(), and osg::SHLChunk::updateViewMatrix().
| 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::OffsetCameraDecorator, 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 }
| bool Camera::calcViewRay | ( | Line & | line, | |
| Int32 | x, | |||
| Int32 | y, | |||
| const Viewport & | port, | |||
| Real32 * | t = NULL | |||
| ) | [inherited] |
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. t is the length of the viewing ray.
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::Vector< ValueTypeT, SizeI >::length(), osg::TransformationMatrix< ValueTypeT >::mult(), osg::TransformationMatrix< ValueTypeT >::multFull(), 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 #ifndef OSG_2_PREP 00290 cctowc.multFullMatrixPnt(Pnt3f(rx, ry, -1), from); 00291 cctowc.multFullMatrixPnt(Pnt3f(rx, ry, 1), at); 00292 #else 00293 cctowc.multFull(Pnt3f(rx, ry, -1), from); 00294 cctowc.multFull(Pnt3f(rx, ry, 1), at ); 00295 #endif 00296 00297 Vec3f dir = at - from; 00298 00299 if (t) 00300 { 00301 *t = dir.length(); 00302 } 00303 00304 line.setValue(from, dir); 00305 00306 return true; 00307 }
| SFNodePtr * osg::CameraBase::editSFBeacon | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 332 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfBeacon.
00333 { 00334 return &_sfBeacon; 00335 }
| const SFNodePtr * osg::CameraBase::getSFBeacon | ( | void | ) | const [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 326 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfBeacon.
00327 { 00328 return &_sfBeacon; 00329 }
| SFNodePtr * osg::CameraBase::getSFBeacon | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 340 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfBeacon.
00341 { 00342 return &_sfBeacon; 00343 }
| SFReal32 * osg::CameraBase::editSFNear | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 353 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfNear.
00354 { 00355 return &_sfNear; 00356 }
| const SFReal32 * osg::CameraBase::getSFNear | ( | void | ) | const [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 347 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfNear.
00348 { 00349 return &_sfNear; 00350 }
| SFReal32 * osg::CameraBase::getSFNear | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 361 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfNear.
00362 { 00363 return &_sfNear; 00364 }
| SFReal32 * osg::CameraBase::editSFFar | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 374 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfFar.
00375 { 00376 return &_sfFar; 00377 }
| const SFReal32 * osg::CameraBase::getSFFar | ( | void | ) | const [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 368 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfFar.
00369 { 00370 return &_sfFar; 00371 }
| SFReal32 * osg::CameraBase::getSFFar | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 382 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfFar.
00383 { 00384 return &_sfFar; 00385 }
| NodePtr & osg::CameraBase::editBeacon | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 390 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfBeacon, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00391 { 00392 return _sfBeacon.getValue(); 00393 }
| const NodePtr & osg::CameraBase::getBeacon | ( | void | ) | const [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 396 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfBeacon, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by drawViewerObjects< posTrait, colTrait, sizeTrait, geoTrait >::draw(), drawViewerObjects< posTrait, colTrait, sizeTrait, geoTrait >::drawIndexed(), and osg::Camera::getViewing().
00397 { 00398 return _sfBeacon.getValue(); 00399 }
| NodePtr & osg::CameraBase::getBeacon | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 403 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfBeacon, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00404 { 00405 return _sfBeacon.getValue(); 00406 }
| Real32 & osg::CameraBase::editNear | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 416 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfNear, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00417 { 00418 return _sfNear.getValue(); 00419 }
| const Real32 & osg::CameraBase::getNear | ( | void | ) | const [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 422 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfNear, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::PerspectiveCamera::getProjection(), getProjection(), osg::OffCenterPerspectiveCamera::getProjection(), and osg::SHLChunk::updateNearFar().
00423 { 00424 return _sfNear.getValue(); 00425 }
| Real32 & osg::CameraBase::getNear | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 429 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfNear, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00430 { 00431 return _sfNear.getValue(); 00432 }
| Real32 & osg::CameraBase::editFar | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 442 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfFar, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00443 { 00444 return _sfFar.getValue(); 00445 }
| const Real32 & osg::CameraBase::getFar | ( | void | ) | const [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 448 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfFar, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::PerspectiveCamera::getProjection(), getProjection(), osg::OffCenterPerspectiveCamera::getProjection(), and osg::SHLChunk::updateNearFar().
00449 { 00450 return _sfFar.getValue(); 00451 }
| Real32 & osg::CameraBase::getFar | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 455 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfFar, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00456 { 00457 return _sfFar.getValue(); 00458 }
| void osg::CameraBase::setBeacon | ( | const NodePtr & | value | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 410 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfBeacon, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
| void osg::CameraBase::setNear | ( | const Real32 & | value | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 436 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfNear, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
| void osg::CameraBase::setFar | ( | const Real32 & | value | ) | [virtual, inherited] |
Reimplemented in osg::CameraDecoratorBase.
Definition at line 462 of file OSGCameraBase.cpp.
References osg::CameraBase::_sfFar, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
| 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 353 of file OSGAttachmentContainer.cpp.
Referenced by osg::FileGrabForeground::draw(), osg::FBOViewport::render(), osg::AttachmentContainer::subAttachment(), and osg::AttachmentContainer::~AttachmentContainer().
00354 { 00355 return AttachmentContainerPtr(*this); 00356 }
| 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::Image::setAttachmentField().
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(), osg::ShearedStereoCameraDecoratorBase::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::ShadeModelChunkBase::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::OffsetCameraDecoratorBase::createEmpty(), osg::OffCenterPerspectiveCameraBase::createEmpty(), osg::MultiSwitchBase::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::FogChunkBase::createEmpty(), osg::FogBase::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(), osg::ShearedStereoCameraDecoratorBase::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::ShadeModelChunkBase::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::OffsetCameraDecoratorBase::shallowCopy(), osg::OffCenterPerspectiveCameraBase::shallowCopy(), osg::MultiSwitchBase::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::FogChunkBase::shallowCopy(), osg::FogBase::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 #ifdef OSG_INVALID_PTR_CHECK 00168 result._id = *(reinterpret_cast<UInt32 *>(pTmp)); 00169 #endif 00170 00171 Thread::getCurrentChangeList()->addCreated( 00172 *(reinterpret_cast<UInt32 *>(pTmp))); 00173 00174 pTmp += sizeof(UInt32); 00175 00176 ObjectType *aObject = reinterpret_cast<ObjectType *>(pTmp); 00177 00178 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00179 { 00180 pTmp = 00181 reinterpret_cast<UInt8 *>(new (pTmp) ObjectType(*prototypeP)); 00182 00183 pTmp += sizeof(ObjectType); 00184 } 00185 00186 result->onCreate(prototypeP); 00187 00188 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00189 { 00190 aObject[i].onCreateAspect(aObject, prototypeP); 00191 } 00192 00193 #if defined(OSG_GV_BETA) && defined(OSG_DBG_MEM) 00194 00195 fprintf(stderr, "GV_MEM_FC_DBG : (%u) cc (%p|%u)\n", 00196 Thread::getAspect(), 00197 result._storeP, 00198 // ObjectType::getClassType().getCName(), 00199 ObjectType::getClassType().getId()); 00200 #endif 00201 00202 #ifdef OSG_DEBUG_TYPED_FCPTR 00203 result.updateTypedStore(); 00204 #endif 00205 }
| void osg::FieldContainer::newPtr | ( | ObjectPtrT & | result | ) | [inline, static, protected, inherited] |
Definition at line 208 of file OSGFieldContainerImpl.inl.
References osg::ChangeList::addCreated(), osg::PThreadBase::getAspect(), osg::PThreadBase::getCurrentChangeList(), osg::ThreadManager::getNumAspects(), osg::FieldContainerFactory::registerFieldContainer(), and osg::FieldContainerFactory::the().
00209 { 00210 typedef typename ObjectPtrT::StoredObjectType ObjectType; 00211 00212 UInt8 *pTmp; 00213 00214 result._containerSize = sizeof(ObjectType); 00215 00216 pTmp = 00217 static_cast<UInt8 *>(operator new( 00218 sizeof(Int32) + // ReferenceCount 00219 sizeof(UInt32) + // ContainerId 00220 sizeof(ObjectType) * ThreadManager::getNumAspects())); 00221 00222 *(reinterpret_cast<Int32 *>(pTmp)) = 0; 00223 00224 pTmp += sizeof(Int32); 00225 00226 result._storeP = (pTmp + sizeof(UInt32)); 00227 00228 #ifdef OSG_DEBUG_FCPTR 00229 result._typedStoreP = reinterpret_cast<FieldContainer *>(result._storeP); 00230 #endif 00231 00232 *(reinterpret_cast<UInt32 *>(pTmp)) = 00233 FieldContainerFactory::the()->registerFieldContainer(result); 00234 00235 #ifdef OSG_INVALID_PTR_CHECK 00236 result._id = *(reinterpret_cast<UInt32 *>(pTmp)); 00237 #endif 00238 00239 Thread::getCurrentChangeList()->addCreated( 00240 *(reinterpret_cast<UInt32 *>(pTmp))); 00241 00242 pTmp += sizeof(UInt32); 00243 00244 ObjectType *aObject = reinterpret_cast<ObjectType *>(pTmp); 00245 00246 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00247 { 00248 pTmp = reinterpret_cast<UInt8 *>(new (pTmp) ObjectType()); 00249 00250 pTmp += sizeof(ObjectType); 00251 } 00252 00253 result->onCreate(); 00254 00255 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00256 { 00257 aObject[i].onCreateAspect(aObject); 00258 } 00259 00260 #if defined(OSG_GV_BETA) && defined(OSG_DBG_MEM) 00261 fprintf(stderr, "GV_MEM_FC_DBG : (%u) c (%p|%u)\n", 00262 Thread::getAspect(), 00263 result._storeP, 00264 // ObjectType::getClassType().getCName(), 00265 ObjectType::getClassType().getId()); 00266 #endif 00267 00268 #ifdef OSG_DEBUG_TYPED_FCPTR 00269 result.updateTypedStore(); 00270 #endif 00271 }
| void osg::FieldContainer::beginEditX | ( | const BitVector & | whichField, | |
| FieldTypeT & | field | |||
| ) | [inline, protected, inherited] |
Definition at line 293 of file OSGFieldContainerImpl.inl.
| void osg::FieldContainer::endEditX | ( | const BitVector & | whichField, | |
| FieldTypeT & | field | |||
| ) | [inline, protected, inherited] |
Definition at line 299 of file OSGFieldContainerImpl.inl.
References osg::endEditCP().
00300 { 00301 FieldContainerPtr tmpPtr(this); 00302 endEditCP(tmpPtr, whichField); 00303 }
| void osg::FieldContainer::onCreate | ( | const FieldContainer * | source = NULL |
) | [inline, protected, inherited] |
Reimplemented in osg::Node, osg::Geometry, osg::FatBorderChunk, osg::Surface, osg::CubeTextureChunk, osg::FragmentProgramChunk, osg::ProgramChunk, osg::TextureChunk, osg::VertexProgramChunk, osg::FBOViewport, osg::SkyBackground, osg::Window, osg::ShaderParameterChunk, and osg::SHLChunk.
Definition at line 326 of file OSGFieldContainerImpl.inl.
Referenced by osg::SkyBackground::onCreate(), and osg::ShaderParameterChunk::onCreate().
| void osg::FieldContainer::onCreateAspect | ( | const FieldContainer * | aspect0, | |
| const FieldContainer * | source = NULL | |||
| ) | [inline, protected, inherited] |
Reimplemented in osg::Window.
Definition at line 331 of file OSGFieldContainerImpl.inl.
| 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::SkyBackground, osg::Window, osg::ShaderParameterChunk, and osg::SHLChunk.
Definition at line 98 of file OSGFieldContainer.cpp.
Referenced by osg::SkyBackground::onDestroy().
friend class FieldContainer [friend] |
Reimplemented from osg::OrthographicCameraBase.
Definition at line 113 of file OSGOrthographicCamera.h.
friend class OrthographicCameraBase [friend] |
Definition at line 114 of file OSGOrthographicCamera.h.
const osg::BitVector osg::OrthographicCameraBase::VerticalSizeFieldMask [static, inherited] |
(TypeTraits<BitVector>::One << OrthographicCameraBase::VerticalSizeFieldId)
Definition at line 102 of file OSGOrthographicCameraBase.h.
Referenced by osg::OrthographicCameraBase::copyFromBin(), osg::OrthographicCameraBase::copyToBin(), osg::OrthographicCameraBase::executeSyncImpl(), and osg::OrthographicCameraBase::getBinSize().
const osg::BitVector osg::OrthographicCameraBase::HorizontalSizeFieldMask [static, inherited] |
(TypeTraits<BitVector>::One << OrthographicCameraBase::HorizontalSizeFieldId)
Definition at line 103 of file OSGOrthographicCameraBase.h.
Referenced by osg::OrthographicCameraBase::copyFromBin(), osg::OrthographicCameraBase::copyToBin(), osg::OrthographicCameraBase::executeSyncImpl(), and osg::OrthographicCameraBase::getBinSize().
const osg::BitVector osg::OrthographicCameraBase::AspectFieldMask [static, inherited] |
(TypeTraits<BitVector>::One << OrthographicCameraBase::AspectFieldId)
Definition at line 104 of file OSGOrthographicCameraBase.h.
Referenced by osg::OrthographicCameraBase::copyFromBin(), osg::OrthographicCameraBase::copyToBin(), osg::OrthographicCameraBase::executeSyncImpl(), and osg::OrthographicCameraBase::getBinSize().
const osg::BitVector osg::OrthographicCameraBase::MTInfluenceMask [static, inherited] |
(Inherited::MTInfluenceMask) |
(static_cast<BitVector>(0x0) << Inherited::NextFieldId)
Reimplemented from osg::CameraBase.
Definition at line 107 of file OSGOrthographicCameraBase.h.
Real32 osg::OrthographicCameraBase::_sfVerticalSize [protected, inherited] |
The vertical size of the camera box, in world units. Ignored when less then or equal to zero.
Definition at line 219 of file OSGOrthographicCameraBase.h.
Referenced by osg::OrthographicCameraBase::copyFromBin(), osg::OrthographicCameraBase::copyToBin(), osg::OrthographicCameraBase::editSFVerticalSize(), osg::OrthographicCameraBase::editVerticalSize(), osg::OrthographicCameraBase::executeSyncImpl(), osg::OrthographicCameraBase::getBinSize(), osg::OrthographicCameraBase::getSFVerticalSize(), osg::OrthographicCameraBase::getVerticalSize(), and osg::OrthographicCameraBase::setVerticalSize().
Real32 osg::OrthographicCameraBase::_sfHorizontalSize [protected, inherited] |
The horizontal size of the camera box, in world units. Ignored when less then or equal to zero.
Definition at line 220 of file OSGOrthographicCameraBase.h.
Referenced by osg::OrthographicCameraBase::copyFromBin(), osg::OrthographicCameraBase::copyToBin(), osg::OrthographicCameraBase::editHorizontalSize(), osg::OrthographicCameraBase::editSFHorizontalSize(), osg::OrthographicCameraBase::executeSyncImpl(), osg::OrthographicCameraBase::getBinSize(), osg::OrthographicCameraBase::getHorizontalSize(), osg::OrthographicCameraBase::getSFHorizontalSize(), and osg::OrthographicCameraBase::setHorizontalSize().
Real32 osg::OrthographicCameraBase::_sfAspect [protected, inherited] |
The aspect ratio (i.e. width / height) of a pixel.
Definition at line 221 of file OSGOrthographicCameraBase.h.
Referenced by osg::OrthographicCameraBase::copyFromBin(), osg::OrthographicCameraBase::copyToBin(), osg::OrthographicCameraBase::editAspect(), osg::OrthographicCameraBase::editSFAspect(), osg::OrthographicCameraBase::executeSyncImpl(), osg::OrthographicCameraBase::getAspect(), osg::OrthographicCameraBase::getBinSize(), osg::OrthographicCameraBase::getSFAspect(), and osg::OrthographicCameraBase::setAspect().
const osg::BitVector osg::CameraBase::BeaconFieldMask [static, inherited] |
(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 osg::CameraBase::NearFieldMask [static, inherited] |
(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 osg::CameraBase::FarFieldMask [static, inherited] |
(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 osg::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 203 of file OSGCameraBase.h.
Referenced by osg::CameraBase::copyFromBin(), osg::CameraBase::copyToBin(), osg::CameraBase::editBeacon(), osg::CameraBase::editSFBeacon(), osg::CameraBase::executeSyncImpl(), osg::CameraBase::getBeacon(), osg::CameraBase::getBinSize(), osg::CameraBase::getSFBeacon(), and osg::CameraBase::setBeacon().
Real32 osg::CameraBase::_sfNear [protected, inherited] |
The near distance of the camera.
Definition at line 204 of file OSGCameraBase.h.
Referenced by osg::CameraBase::copyFromBin(), osg::CameraBase::copyToBin(), osg::CameraBase::editNear(), osg::CameraBase::editSFNear(), osg::CameraBase::executeSyncImpl(), osg::CameraBase::getBinSize(), osg::CameraBase::getNear(), osg::CameraBase::getSFNear(), and osg::CameraBase::setNear().
Real32 osg::CameraBase::_sfFar [protected, inherited] |
The far distance of the camera.
Definition at line 205 of file OSGCameraBase.h.
Referenced by osg::CameraBase::copyFromBin(), osg::CameraBase::copyToBin(), osg::CameraBase::editFar(), osg::CameraBase::editSFFar(), osg::CameraBase::executeSyncImpl(), osg::CameraBase::getBinSize(), osg::CameraBase::getFar(), osg::CameraBase::getSFFar(), and osg::CameraBase::setFar().
const BitVector AttachmentContainer::AttachmentsFieldMask [static, inherited] |
(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::VRMLAppearanceDesc::endNode(), osg::AttachmentContainer::executeSyncImpl(), and osg::AttachmentContainer::getBinSize().
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] |
(TypeTraits<BitVector>::One << NextFieldId)
Definition at line 75 of file OSGFieldContainerImpl.h.
const bool osg::FieldContainer::isNodeCore = false [static, inherited] |
Reimplemented in osg::NodeCore.
Definition at line 181 of file OSGFieldContainerImpl.h.
UInt32 osg::FieldContainer::_shares [protected, inherited] |
Definition at line 199 of file OSGFieldContainerImpl.h.
1.6.1