diff --git a/include/osg/Program b/include/osg/Program index 72cb3543e..33060d7af 100644 --- a/include/osg/Program +++ b/include/osg/Program @@ -386,6 +386,7 @@ class SG_EXPORT Program : public osg::StateAttribute protected: /** PerContextProgram (PCP) is an OSG-internal encapsulation of glPrograms per-GL context. */ + class PerContextProgram : public osg::Referenced { public: @@ -429,6 +430,10 @@ class SG_EXPORT Program : public osg::StateAttribute PerContextProgram& operator=(const PerContextProgram&); // disallowed }; + // make PerContextProgram a friend to allow it access Program's protected + // methods and member variables. + friend class PerContextProgram; + protected: /*methods*/ virtual ~Program(); /** Get the PCP for a particular GL context */