Hi,

If you take a look into the Resource of osgCompute you will also find that they 
have declared META_OBJECT as all caps and they have the declared the copy 
constructor in the private scope and they are not defined in the source, i find 
this strange though.But It compiled fine. 

Now i am extending the this plugin and i am having error while trying to 
compile the following class. (Now i am including the while class definition).


Code:

#ifndef OSGOPENCL_CONTEXT
#define OSGOPENCL_CONTEXT 1

#include <osgOpenCL/osgOpenCLDefines>


#include <osg/GL>
#include <osg/ref_ptr>
#include <osg/Referenced>
#include <osgViewer/ViewerBase>

#include <osgCompute/Export>
#include <osgCompute/Callback>


namespace osgOpenCL
{
        class LIBRARY_EXPORT osgOpenCLContext : public osg::Object
        {
                public:
                        osgOpenCLContext();

                        META_OBJECT(osgOpenCL,osgOpenCLContext);

                        bool setupOsgOpenCLAndViewer(osgViewer::ViewerBase 
&viewer,
                                                     int ctxID = -1);
                        
                        ~osgOpenCLContext();

                public:

                
                     //typedef the list of the device within the context
                     //IN THIS INITIAL VERSION WE ARE ONLY CONSIDERING ONE 
DEVICE ON ONE CONTEXT
                     //SO COMMENT THE FOLLOWING 
                     //typedef 
std::vector<osg::ref_ptr<osgOpenCL::osgOpenCLDevice> > osgOpenCLDeviceList;

                     //declare the device list
                     //osgOpenCLDeviceList m_osgOpenCLDeviceList;

                     //hold the current OpenCL context
                     cl_context m_clContext;

                     //hold the current platform id
                     cl_platform_id m_clPlatform;

                     //hold the current device id
                     cl_device_id m_clDevice;

                     //hold the command queue for the device
                     cl_command_queue m_clCommandQueue;

                 private:
                     // Copy constructor and operator should not be called
                     osgOpenCLContext(const osgOpenCLContext& ,const 
osg::CopyOp& ) {}
                     osgOpenCLContext &operator=(const osgOpenCLContext&) { 
return *this; }                     
        
        };
}


#endif





Any more idea to get around this issue?

Cheers,
Sajjadul

------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=53850#53850





_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to