OpenSceneGraph/include/osg
Robert Osfield 74a9ccb49d From David Fries, merge from a series of related submission emails:
"enable thread locking in libavcodec

This is required for a multithreaded application using ffmpeg from
another thread."

"Prevent the audio from videos from hanging on exit if they are paused.
The video decoder already has similar logic."

"Add a way to retrieve the creation time for MPEG-4 files."

"fmpeg, improve wait for close logic

Both audio and video destructors have been succesfully using the logic,
if(isRunning())
{
  m_exit = true;
  join();
}
since it was introduced,

but the close routines are using,
m_exit = true;
if(isRunning() && waitForThreadToExit)
{
  while(isRunning()) { OpenThreads::Thread::YieldCurrentThread(); }
}
which not only is it doing an unnecessary busy wait, but it doesn't
guaranteed that the other thread has terminated, just that it has
progressed far enough that OpenThreads has set the thread status as
not running.  Like the destructor set the m_exit after checking
isRunning() to avoid the race condition of not getting to join()
because the thread was running, but isRunning() returns false.

Now that FFmpeg*close is fixed, call it from the destructor as well
to have that code in only one location."
2010-08-09 17:02:31 +00:00
..
AlphaFunc
AnimationPath From Alan Dickinson, change methods to virtual. 2008-09-18 13:54:13 +00:00
ApplicationUsage
ArgumentParser From Eric Sokolowski and Robert Osfield, moved command line option usage setup 2008-05-12 10:55:55 +00:00
Array
ArrayDispatchers
AudioStream
AutoTransform Converted AutoTransform to use doubles. 2008-08-28 09:43:00 +00:00
Billboard
BlendColor
BlendEquation
BlendFunc
BoundingBox
BoundingSphere
BoundsChecking Updated copyright years. 2006-07-18 15:21:48 +00:00
buffered_value
BufferObject
Camera
CameraNode Renamed osg::CameraNode to osg::Camera, cleaned up osg::View. 2006-11-27 14:52:07 +00:00
CameraView
ClampColor
ClearNode Updated copyright years. 2006-07-18 15:21:48 +00:00
ClipNode
ClipPlane Added EGL support into build system for GLES1 + GLES2. 2009-10-30 15:17:38 +00:00
ClusterCullingCallback
CollectOccludersVisitor Introduce NodeVisitor::className and libraryName() 2008-12-17 12:13:15 +00:00
ColorMask
ColorMatrix
ComputeBoundsVisitor
ConvexPlanarOccluder
ConvexPlanarPolygon From Tim Moore, removed redundent forward declartion of BoundingBox and BoundingSphere 2008-11-07 13:18:40 +00:00
CoordinateSystemNode
CopyOp From Cedric Pinson, "Here a patch to be able to clone stateattribute, in order to do that i 2009-10-22 10:33:16 +00:00
CullFace From Mike Wittman, " noticed that some type references of osg::Drawable::AttributeFunctor, osg::Drawable::ConstAttributeFunctor, and osg::StateAttribute::ModeUsage in osg and osgSim were not being properly reflected in osgIntrospection. This appears to be due to Doxygen not handling nested types from superclasses if they're not qualified when referenced in subclasses. 2007-03-05 17:34:36 +00:00
CullingSet Replaced use of unsigned int/enum mask combinations with int/enum mask combinations to avoid the need for casting enums to unsigned ints, 2010-03-05 12:55:08 +00:00
CullSettings
CullStack
DeleteHandler
Depth
DisplaySettings
Drawable From Alok Priyadarshi, "1. Replaced APIENTRY to GL_APIENTRY which is used by OpenGL ES 2010-04-28 21:22:44 +00:00
DrawPixels Fixed parameter name 2007-05-14 16:16:22 +00:00
Endian
Export Added a couple more pragma's to resolve final Windows warnings 2009-02-06 15:39:44 +00:00
fast_back_stack
Fog
FragmentProgram
FrameBufferObject
FrameStamp From Roland Smeenk, "Attached you will find a large set of small typo fixes (mainly in the comments)." 2007-12-10 17:30:18 +00:00
FrontFace
Geode Added asSwitch and asGeode convinience methods to Node 2008-12-09 09:24:47 +00:00
Geometry Added a Geometry::compileGLObjects() to handle compilation of VBO + EBO's. 2009-12-09 13:51:02 +00:00
GL From Alok Priyadarshi, "1. Replaced APIENTRY to GL_APIENTRY which is used by OpenGL ES 2010-04-28 21:22:44 +00:00
GL2Extensions From Alok Priyadarshi, "1. Replaced APIENTRY to GL_APIENTRY which is used by OpenGL ES 2010-04-28 21:22:44 +00:00
GLBeginEndAdapter
GLExtensions Added checked from the ARG version of glDraw*Instanced(). 2009-01-08 11:19:21 +00:00
GLObjects Introduced preliminary osg::deleteAllGLObjects() and osg::discardAllGLObjects() functions and associated support into Texture and BufferObjects 2009-11-26 12:33:07 +00:00
GLU
GraphicsContext
GraphicsThread
Group
Hint
Image Refactored osgQt so that QWebViewImage is now entirely implementated in the header, and osgQt itself no longer compiles it, 2010-05-22 15:45:02 +00:00
ImageSequence
ImageStream
ImageUtils From Juan Hernando, fixed typo in handling of RGBA and BGRA data 2010-01-26 16:50:26 +00:00
io_utils From Roland Smeenk, "Attached you will find a large set of small typo fixes (mainly in the comments)." 2007-12-10 17:30:18 +00:00
KdTree
Light
LightModel
LightSource
LineSegment Added double versions of intersect methods 2008-03-13 16:05:40 +00:00
LineStipple
LineWidth
LOD
LogicOp Introduced usage of OSG_GLES*_AVAILABLE macros to headers and .cpp's to enable building against OpenGL ES 1.x and 2.x headers 2009-10-25 11:52:01 +00:00
Material
Math From Mathias Froechlich, "Attached the collected fixes I needed to compile with all of them. 2009-11-18 12:15:29 +00:00
Matrix From Mathias Froehlich, moved optional config variables into include/osg/Config file that 2008-06-20 15:50:53 +00:00
Matrixd From Mathias Froehlich, "This is a generic optimization that does not depend on any cpu or instruction 2008-09-17 16:14:28 +00:00
Matrixf
MatrixTransform
MixinVector Simplified the MixinVector class so that it no longer supports custom allocators, 2008-06-27 12:44:41 +00:00
Multisample
Node
NodeCallback
NodeTrackerCallback
NodeVisitor From Chris Hanson, comment fix. 2010-02-25 18:03:14 +00:00
Notify
Object
Observer
observer_ptr
ObserverNodePath Refactored Observer/ObserverNodePath and DatabasePager to improve their robustness. 2010-05-14 12:24:13 +00:00
OccluderNode
OcclusionQueryNode
OperationThread Fixed warnings, updated NEWS 2009-01-30 10:55:28 +00:00
PagedLOD
Plane From Hartwig Wiesmann, "I have added some doxygen documentation to the plane class. 2010-05-20 17:02:45 +00:00
Point From Alok Priyadarshi, "1. Replaced APIENTRY to GL_APIENTRY which is used by OpenGL ES 2010-04-28 21:22:44 +00:00
PointSprite
PolygonMode Introduced usage of OSG_GLES*_AVAILABLE macros to headers and .cpp's to enable building against OpenGL ES 1.x and 2.x headers 2009-10-25 11:52:01 +00:00
PolygonOffset Ported osgUtil, osgDB, osgGA, NodeKits and plugins to compile against OpenGL ES 1.1 and OpenGL ES 2.0. 2009-10-28 20:31:57 +00:00
PolygonStipple
Polytope Changed setting of stack back assigned to push_back to fix bug with cull mask management. 2009-05-07 18:30:33 +00:00
PositionAttitudeTransform
PrimitiveSet
Program
Projection Updated copyright years. 2006-07-18 15:21:48 +00:00
ProxyNode
Quat Updated copyright years. 2006-07-18 15:21:48 +00:00
ref_ptr From Tim Moore, "This is a patch that allows a ref_ptr to be constructed using an observer_ptr argument, which is locked. This is shorthand for declaring the ref_ptr and then passing it to observer_ptr::lock(). 2010-06-01 11:28:04 +00:00
Referenced Introduced a alternative implementation of observer_ptr<> that uses ObserverSet rather than an local WeakReference object. 2010-05-20 13:38:28 +00:00
RenderInfo
Scissor
Sequence From Wang Rui, "Attached are two simple modifications of osg::Sequence and 2010-01-13 13:30:14 +00:00
ShadeModel
Shader Added compile/release and resize of GL objects to ShaderAttribute. 2010-07-06 12:19:26 +00:00
ShaderAttribute Added debug State::print(std::ostream&) method and extra debug messages in ShaderComposer and ShaderAttribute. 2010-07-10 17:14:59 +00:00
ShaderComposer
ShadowVolumeOccluder
Shape
ShapeDrawable
State Added debug State::print(std::ostream&) method and extra debug messages in ShaderComposer and ShaderAttribute. 2010-07-10 17:14:59 +00:00
StateAttribute
StateAttributeCallback From Cedric Pinson, new StateAttributeCallback replacing StateAttribute::Callback 2009-10-22 12:01:06 +00:00
StateSet
Stats
Stencil
StencilTwoSided
Switch Added asSwitch and asGeode convinience methods to Node 2008-12-09 09:24:47 +00:00
TemplatePrimitiveFunctor Fixed warnings 2009-01-07 10:32:59 +00:00
TexEnv
TexEnvCombine
TexEnvFilter
TexGen
TexGenNode From Mathias Froehlich, "attached is a change to TexGenNode rev 10060 that removes a private member 2009-04-22 13:07:02 +00:00
TexMat
Texture From Alok Priyadarshi, "1. Replaced APIENTRY to GL_APIENTRY which is used by OpenGL ES 2010-04-28 21:22:44 +00:00
Texture1D From Wang Rui, "Attached are two simple modifications of osg::Sequence and 2010-01-13 13:30:14 +00:00
Texture2D Removed the mutable from the _image variable 2008-04-23 20:49:19 +00:00
Texture2DArray
Texture2DMultisample Fixed warnings 2010-04-30 19:41:24 +00:00
Texture3D
TextureCubeMap From Art Trevs, "Features of the patch are: 2007-09-11 12:04:58 +00:00
TextureRectangle
Timer Added extra elaspedTime_*() methods to help with reporting times in milliseconds etc. 2010-02-09 17:38:02 +00:00
TransferFunction
Transform Added EGL support into build system for GLES1 + GLES2. 2009-10-30 15:17:38 +00:00
TriangleFunctor
TriangleIndexFunctor
Uniform
Vec2
Vec2b
Vec2d Rewrote the Vec *= Vec and Vec /= Vec implementations using inline Vec componentMultiply(Vec,Vec) and Vec componentDivide(Vec,Vec) to avoid confusion about the what the operation does. 2009-11-24 13:28:07 +00:00
Vec2f Rewrote the Vec *= Vec and Vec /= Vec implementations using inline Vec componentMultiply(Vec,Vec) and Vec componentDivide(Vec,Vec) to avoid confusion about the what the operation does. 2009-11-24 13:28:07 +00:00
Vec2s
Vec3 Updated copyright years. 2006-07-18 15:21:48 +00:00
Vec3b
Vec3d
Vec3f Rewrote the Vec *= Vec and Vec /= Vec implementations using inline Vec componentMultiply(Vec,Vec) and Vec componentDivide(Vec,Vec) to avoid confusion about the what the operation does. 2009-11-24 13:28:07 +00:00
Vec3s
Vec4 Updated copyright years. 2006-07-18 15:21:48 +00:00
Vec4b From Paul Obermeier, "Please find enclosed some changed OSG header files. 2009-05-18 10:37:03 +00:00
Vec4d
Vec4f Rewrote the Vec *= Vec and Vec /= Vec implementations using inline Vec componentMultiply(Vec,Vec) and Vec componentDivide(Vec,Vec) to avoid confusion about the what the operation does. 2009-11-24 13:28:07 +00:00
Vec4s Rewrote the Vec *= Vec and Vec /= Vec implementations using inline Vec componentMultiply(Vec,Vec) and Vec componentDivide(Vec,Vec) to avoid confusion about the what the operation does. 2009-11-24 13:28:07 +00:00
Vec4ub
Version Updated version number for next dev release 2010-06-21 10:33:46 +00:00
VertexProgram From Alok Priyadarshi, "1. Replaced APIENTRY to GL_APIENTRY which is used by OpenGL ES 2010-04-28 21:22:44 +00:00
View
Viewport From Roland Smeenk, "Attached you will find a large set of small typo fixes (mainly in the comments)." 2007-12-10 17:30:18 +00:00