OpenSceneGraph
|
Pure virtual base class that provides the browser interface for integration with 3rd party implementations. More...
Public Member Functions | |
virtual void | navigateTo (const std::string &url)=0 |
![]() | |
Image (const Image &image, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
Copy constructor using CopyOp to manage deep vs shallow copy. More... | |
virtual Object * | cloneType () const |
Clone the type of an object, with Object* return type. More... | |
virtual Object * | clone (const CopyOp ©op) const |
Clone an object, with Object* return type. More... | |
virtual bool | isSameKindAs (const Object *obj) const |
virtual const char * | libraryName () const |
return the name of the object's library. More... | |
virtual const char * | className () const |
return the name of the object's class type. More... | |
virtual osg::Image * | asImage () |
virtual const osg::Image * | asImage () const |
virtual const GLvoid * | getDataPointer () const |
virtual unsigned int | getTotalDataSize () const |
virtual int | compare (const Image &rhs) const |
Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs. More... | |
void | setFileName (const std::string &fileName) |
const std::string & | getFileName () const |
void | setWriteHint (WriteHint writeHint) |
WriteHint | getWriteHint () const |
void | setAllocationMode (AllocationMode mode) |
Set the method used for deleting data once it goes out of scope. More... | |
AllocationMode | getAllocationMode () const |
Get the method used for deleting data once it goes out of scope. More... | |
virtual void | allocateImage (int s, int t, int r, GLenum pixelFormat, GLenum type, int packing=1) |
Allocate a pixel block of specified size and type. More... | |
virtual void | setImage (int s, int t, int r, GLint internalTextureformat, GLenum pixelFormat, GLenum type, unsigned char *data, AllocationMode mode, int packing=1, int rowLength=0) |
Set the image dimensions, format and data. More... | |
virtual void | readPixels (int x, int y, int width, int height, GLenum pixelFormat, GLenum type, int packing=1) |
Read pixels from current frame buffer at specified position and size, using glReadPixels. More... | |
virtual void | readImageFromCurrentTexture (unsigned int contextID, bool copyMipMapsIfAvailable, GLenum type=GL_UNSIGNED_BYTE, unsigned int face=0) |
Read the contents of the current bound texture, handling compressed pixelFormats if present. More... | |
void | swap (osg::Image &rhs) |
swap the data and settings between two image objects. More... | |
void | scaleImage (int s, int t, int r) |
Scale image to specified size. More... | |
virtual void | scaleImage (int s, int t, int r, GLenum newDataType) |
Scale image to specified size and with specified data type. More... | |
virtual void | copySubImage (int s_offset, int t_offset, int r_offset, const osg::Image *source) |
Copy a source Image into a subpart of this Image at specified position. More... | |
void | setOrigin (Origin origin) |
Set the origin of the image. More... | |
Origin | getOrigin () const |
Get the origin of the image. More... | |
int | s () const |
Width of image. More... | |
int | t () const |
Height of image. More... | |
int | r () const |
Depth of image. More... | |
void | setRowLength (int length) |
int | getRowLength () const |
void | setInternalTextureFormat (GLint internalFormat) |
GLint | getInternalTextureFormat () const |
void | setPixelFormat (GLenum pixelFormat) |
GLenum | getPixelFormat () const |
void | setDataType (GLenum dataType) |
GLenum | getDataType () const |
void | setPacking (unsigned int packing) |
unsigned int | getPacking () const |
bool | isCompressed () const |
Return true of the pixel format is an OpenGL compressed pixel format. More... | |
void | setPixelAspectRatio (float pixelAspectRatio) |
Set the pixel aspect ratio, defined as the pixel width divided by the pixel height. More... | |
float | getPixelAspectRatio () const |
Get the pixel aspect ratio. More... | |
unsigned int | getPixelSizeInBits () const |
Return the number of bits required for each pixel. More... | |
unsigned int | getRowSizeInBytes () const |
Return the number of bytes each row of pixels occupies once it has been packed. More... | |
unsigned int | getRowStepInBytes () const |
Return the number of bytes between each successive row. More... | |
unsigned int | getImageSizeInBytes () const |
Return the number of bytes each image (_s*_t) of pixels occupies. More... | |
unsigned int | getImageStepInBytes () const |
Return the number of bytes between each successive image. More... | |
unsigned int | getTotalSizeInBytes () const |
Return the number of bytes the whole row/image/volume of pixels occupies. More... | |
unsigned int | getTotalSizeInBytesIncludingMipmaps () const |
Return the number of bytes the whole row/image/volume of pixels occupies, including all mip maps if included. More... | |
bool | valid () const |
Return true if the Image represent a valid and usable imagery. More... | |
unsigned char * | data () |
Raw image data. More... | |
const unsigned char * | data () const |
Raw const image data. More... | |
unsigned char * | data (unsigned int column, unsigned int row=0, unsigned int image=0) |
const unsigned char * | data (unsigned int column, unsigned int row=0, unsigned int image=0) const |
bool | isDataContiguous () const |
return true if the data stored in the image is a contiguous block of data. More... | |
Vec4 | getColor (unsigned int s, unsigned t=0, unsigned r=0) const |
Get the color value for specified texcoord. More... | |
Vec4 | getColor (const Vec2 &texcoord) const |
Get the color value for specified texcoord. More... | |
Vec4 | getColor (const Vec3 &texcoord) const |
Get the color value for specified texcoord. More... | |
void | setColor (const osg::Vec4 &color, unsigned int s, unsigned int t=0, unsigned int r=0) |
Set the color value for specified texcoord. More... | |
void | setColor (const osg::Vec4 &color, const osg::Vec2 &texcoord) |
Set the color value for specified texcoord. More... | |
void | setColor (const osg::Vec4 &color, const osg::Vec3 &texcoord) |
Set the color value for specified texcoord. More... | |
void | flipHorizontal () |
Flip the image horizontally, around s dimension. More... | |
void | flipVertical () |
Flip the image vertically, around t dimension. More... | |
void | flipDepth () |
Flip the image around the r dimension. More... | |
void | ensureValidSizeForTexturing (GLint maxTextureSize) |
Ensure image dimensions are a power of two. More... | |
bool | isMipmap () const |
unsigned int | getNumMipmapLevels () const |
void | setMipmapLevels (const MipmapDataType &mipmapDataVector) |
Send offsets into data. More... | |
const MipmapDataType & | getMipmapLevels () const |
unsigned int | getMipmapOffset (unsigned int mipmapLevel) const |
unsigned char * | getMipmapData (unsigned int mipmapLevel) |
const unsigned char * | getMipmapData (unsigned int mipmapLevel) const |
bool | supportsTextureSubloading () const |
returns false for texture formats that do not support texture subloading | |
virtual bool | isImageTranslucent () const |
Return true if this image is translucent - i.e. More... | |
void | setPixelBufferObject (PixelBufferObject *buffer) |
Set the optional PixelBufferObject used to map the image memory efficiently to graphics memory. More... | |
PixelBufferObject * | getPixelBufferObject () |
Get the PixelBufferObject. More... | |
const PixelBufferObject * | getPixelBufferObject () const |
Get the const PixelBufferObject. More... | |
virtual bool | requiresUpdateCall () const |
Return whether the update(NodeVisitor* nv) should be required on each frame to enable proper working of osg::Image. More... | |
virtual void | update (NodeVisitor *) |
update method for osg::Image subclasses that update themselves during the update traversal. More... | |
virtual bool | sendFocusHint (bool) |
Hint whether to enable or disable focus to images acting as front ends to interactive surfaces such as a vnc or browser window. More... | |
virtual bool | sendPointerEvent (int, int, int) |
Send pointer events to images that are acting as front ends to interactive surfaces such as a vnc or browser window. More... | |
virtual bool | sendKeyEvent (int, bool) |
Send key events to images that are acting as front ends to interactive surfaces such as a vnc or browser window. More... | |
virtual void | setFrameLastRendered (const osg::FrameStamp *) |
Pass frame information to the custom Image classes, to be called only when objects associated with imagery are not culled. More... | |
void | addDimensionsChangedCallback (DimensionsChangedCallback *cb) |
void | removeDimensionsChangedCallback (DimensionsChangedCallback *cb) |
![]() | |
BufferData (const BufferData &bd, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
Copy constructor using CopyOp to manage deep vs shallow copy. More... | |
virtual osg::Array * | asArray () |
virtual const osg::Array * | asArray () const |
virtual osg::PrimitiveSet * | asPrimitiveSet () |
virtual const osg::PrimitiveSet * | asPrimitiveSet () const |
void | setBufferObject (BufferObject *bufferObject) |
BufferObject * | getBufferObject () |
const BufferObject * | getBufferObject () const |
void | setBufferIndex (unsigned int index) |
unsigned int | getBufferIndex () const |
GLBufferObject * | getGLBufferObject (unsigned int contextID) const |
GLBufferObject * | getOrCreateGLBufferObject (unsigned int contextID) const |
void | setModifiedCallback (ModifiedCallback *md) |
ModifiedCallback * | getModifiedCallback () |
const ModifiedCallback * | getModifiedCallback () const |
void | dirty () |
Dirty the primitive, which increments the modified count, to force buffer objects to update. More... | |
void | setModifiedCount (unsigned int value) |
Set the modified count value. More... | |
unsigned int | getModifiedCount () const |
Get modified count value. More... | |
virtual void | resizeGLObjectBuffers (unsigned int maxSize) |
Resize any per context GLObject buffers to specified size. More... | |
void | releaseGLObjects (State *state=0) const |
If State is non-zero, this function releases OpenGL objects for the specified graphics context. More... | |
unsigned int | getNumClients () const |
void | addClient (osg::Object *) |
void | removeClient (osg::Object *) |
![]() | |
Object () | |
Construct an object. More... | |
Object (bool threadSafeRefUnref) | |
Object (const Object &, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
Copy constructor, optional CopyOp object can be used to control shallow vs deep copying of dynamic data. More... | |
std::string | getCompoundClassName () const |
return the compound class name that combines the library name and class name. More... | |
virtual Node * | asNode () |
Convert 'this' into a Node pointer if Object is a Node, otherwise return 0. More... | |
virtual const Node * | asNode () const |
convert 'const this' into a const Node pointer if Object is a Node, otherwise return 0. More... | |
virtual NodeVisitor * | asNodeVisitor () |
Convert 'this' into a NodeVisitor pointer if Object is a NodeVisitor, otherwise return 0. More... | |
virtual const NodeVisitor * | asNodeVisitor () const |
convert 'const this' into a const NodeVisitor pointer if Object is a NodeVisitor, otherwise return 0. More... | |
virtual StateAttribute * | asStateAttribute () |
Convert 'this' into a StateAttribute pointer if Object is a StateAttribute, otherwise return 0. More... | |
virtual const StateAttribute * | asStateAttribute () const |
convert 'const this' into a const StateAttribute pointer if Object is a StateAttribute, otherwise return 0. More... | |
virtual Uniform * | asUniform () |
Convert 'this' into a Uniform pointer if Object is a Uniform, otherwise return 0. More... | |
virtual const Uniform * | asUniform () const |
convert 'const this' into a const Uniform pointer if Object is a Uniform, otherwise return 0. More... | |
virtual void | setThreadSafeRefUnref (bool threadSafe) |
Set whether to use a mutex to ensure ref() and unref() are thread safe. More... | |
virtual void | setName (const std::string &name) |
Set the name of object using C++ style string. More... | |
void | setName (const char *name) |
Set the name of object using a C style string. More... | |
const std::string & | getName () const |
Get the name of object. More... | |
void | setDataVariance (DataVariance dv) |
Set the data variance of this object. More... | |
DataVariance | getDataVariance () const |
Get the data variance of this object. More... | |
virtual void | computeDataVariance () |
Compute the DataVariance based on an assessment of callback etc. More... | |
void | setUserDataContainer (osg::UserDataContainer *udc) |
set the UserDataContainer object. More... | |
template<class T > | |
void | setUserDataContainer (const ref_ptr< T > &udc) |
osg::UserDataContainer * | getUserDataContainer () |
get the UserDataContainer attached to this object. More... | |
const osg::UserDataContainer * | getUserDataContainer () const |
get the const UserDataContainer attached to this object. More... | |
osg::UserDataContainer * | getOrCreateUserDataContainer () |
Convenience method that returns the UserDataContainer, and if one doesn't already exist creates and assigns a DefaultUserDataContainer to the Object and then return this new UserDataContainer. More... | |
virtual void | setUserData (Referenced *obj) |
Set user data, data must be subclassed from Referenced to allow automatic memory handling. More... | |
template<class T > | |
void | setUserData (const ref_ptr< T > &ud) |
virtual Referenced * | getUserData () |
Get user data. More... | |
virtual const Referenced * | getUserData () const |
Get const user data. More... | |
template<typename T > | |
bool | getUserValue (const std::string &name, T &value) const |
Convenience method that casts the named UserObject to osg::TemplateValueObject<T> and gets the value. More... | |
template<typename T > | |
void | setUserValue (const std::string &name, const T &value) |
Convenience method that creates the osg::TemplateValueObject<T> to store the specified value and adds it as a named UserObject. More... | |
template<typename T > | |
BoolValueObject UCharValueObject UShortValueObject UIntValueObject DoubleValueObject Vec3fValueObject Vec2dValueObject Vec4dValueObject PlaneValueObject MatrixdValueObject BoundingBoxdValueObject BoundingSpheredValueObject bool | getUserValue (const std::string &name, T &value) const |
provide implementation of osg::Object::getUserValue(..) template | |
![]() | |
Referenced (bool threadSafeRefUnref) | |
Referenced (const Referenced &) | |
Referenced & | operator= (const Referenced &) |
bool | getThreadSafeRefUnref () const |
Get whether a mutex is used to ensure ref() and unref() are thread safe. More... | |
bool | getThreadSafeRefUnref () const |
OpenThreads::Mutex * | getRefMutex () const |
Get the mutex used to ensure thread safety of ref()/unref(). More... | |
OpenThreads::Mutex * | getRefMutex () const |
int | ref () const |
Increment the reference count by one, indicating that this object has another pointer which is referencing it. More... | |
int | unref () const |
Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More... | |
int | unref_nodelete () const |
Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More... | |
int | referenceCount () const |
Return the number of pointers currently referencing this object. More... | |
ObserverSet * | getObserverSet () const |
Get the ObserverSet if one is attached, otherwise return NULL. More... | |
ObserverSet * | getOrCreateObserverSet () const |
Get the ObserverSet if one is attached, otherwise create an ObserverSet, attach it, then return this newly created ObserverSet. More... | |
void | addObserver (Observer *observer) const |
Add a Observer that is observing this object, notify the Observer when this object gets deleted. More... | |
void | removeObserver (Observer *observer) const |
Remove Observer that is observing this object. More... | |
Additional Inherited Members | |
![]() | |
enum | WriteHint { NO_PREFERENCE, STORE_INLINE, EXTERNAL_FILE } |
enum | AllocationMode { NO_DELETE, USE_NEW_DELETE, USE_MALLOC_FREE } |
enum | Origin { BOTTOM_LEFT, TOP_LEFT } |
typedef std::vector< unsigned int > | MipmapDataType |
Precomputed mipmaps stuff. More... | |
typedef std::vector< osg::ref_ptr< DimensionsChangedCallback > > | DimensionsChangedCallbackVector |
![]() | |
enum | DataVariance { DYNAMIC, STATIC, UNSPECIFIED } |
![]() | |
static bool | isPackedType (GLenum type) |
static GLenum | computePixelFormat (GLenum pixelFormat) |
static GLenum | computeFormatDataType (GLenum pixelFormat) |
static unsigned int | computeBlockSize (GLenum pixelFormat, GLenum packing) |
static unsigned int | computeNumComponents (GLenum pixelFormat) |
static unsigned int | computePixelSizeInBits (GLenum pixelFormat, GLenum type) |
static unsigned int | computeRowWidthInBytes (int width, GLenum pixelFormat, GLenum type, int packing) |
static unsigned int | computeImageSizeInBytes (int width, int height, int depth, GLenum pixelFormat, GLenum type, int packing=1, int slice_packing=1, int image_packing=1) |
static int | computeNearestPowerOfTwo (int s, float bias=0.5f) |
static int | computeNumberOfMipmapLevels (int s, int t=1, int r=1) |
![]() | |
static OpenThreads::Mutex * | getGlobalReferencedMutex () |
Get the optional global Referenced mutex, this can be shared between all osg::Referenced. More... | |
static void | setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting) |
Set whether reference counting should use a mutex for thread safe reference counting. More... | |
static bool | getThreadSafeReferenceCounting () |
Get whether reference counting is active. More... | |
static void | setDeleteHandler (DeleteHandler *handler) |
Set a DeleteHandler to which deletion of all referenced counted objects will be delegated. More... | |
static DeleteHandler * | getDeleteHandler () |
Get a DeleteHandler. More... | |
![]() | |
Image & | operator= (const Image &) |
void | handleDimensionsChangedCallbacks () |
void | deallocateData () |
void | setData (unsigned char *data, AllocationMode allocationMode) |
![]() | |
virtual | ~Object () |
Object destructor. More... | |
![]() | |
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
void | deleteUsingDeleteHandler () const |
![]() | |
std::string | _fileName |
WriteHint | _writeHint |
Origin | _origin |
int | _s |
int | _t |
int | _r |
int | _rowLength |
GLint | _internalTextureFormat |
GLenum | _pixelFormat |
GLenum | _dataType |
unsigned int | _packing |
float | _pixelAspectRatio |
AllocationMode | _allocationMode |
unsigned char * | _data |
MipmapDataType | _mipmapData |
DimensionsChangedCallbackVector | _dimensionsChangedCallbacks |
![]() | |
unsigned int | _modifiedCount |
unsigned int | _bufferIndex |
osg::ref_ptr< BufferObject > | _bufferObject |
osg::ref_ptr< ModifiedCallback > | _modifiedCallback |
unsigned int | _numClients |
![]() | |
std::string | _name |
DataVariance | _dataVariance |
osg::UserDataContainer * | _userDataContainer |
![]() | |
OpenThreads::AtomicPtr | _observerSet |
OpenThreads::Atomic | _refCount |
OpenThreads::Mutex * | _refMutex |
int | _refCount |
void * | _observerSet |
Pure virtual base class that provides the browser interface for integration with 3rd party implementations.
Implementations of BrowserImage are provided via the gecko plugin.