Introduced osgVolume::Property, CompositePropery and TransferFunctionPropety classes
This commit is contained in:
@@ -124,7 +124,7 @@ class ReaderWriterDICOM : public osgDB::ReaderWriter
|
||||
|
||||
osg::ref_ptr<osgVolume::Layer> layer= new osgVolume::ImageLayer(result.getImage());
|
||||
|
||||
tile->addLayer(layer.get());
|
||||
tile->setLayer(layer.get());
|
||||
|
||||
// get matrix providing size of texels (in mm)
|
||||
osg::RefMatrix* matrix = dynamic_cast<osg::RefMatrix*>(result.getImage()->getUserData());
|
||||
|
||||
@@ -12,6 +12,7 @@ SET(LIB_PUBLIC_HEADERS
|
||||
${HEADER_PATH}/FixedFunctionTechnique
|
||||
${HEADER_PATH}/Layer
|
||||
${HEADER_PATH}/Locator
|
||||
${HEADER_PATH}/Property
|
||||
${HEADER_PATH}/ShaderTechnique
|
||||
${HEADER_PATH}/Version
|
||||
${HEADER_PATH}/Volume
|
||||
@@ -26,6 +27,7 @@ ADD_LIBRARY(${LIB_NAME}
|
||||
FixedFunctionTechnique.cpp
|
||||
Layer.cpp
|
||||
Locator.cpp
|
||||
Property.cpp
|
||||
ShaderTechnique.cpp
|
||||
Version.cpp
|
||||
Volume.cpp
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
|
||||
*
|
||||
* This library is open source and may be redistributed and/or modified under
|
||||
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
|
||||
*
|
||||
* This library is open source and may be redistributed and/or modified under
|
||||
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
|
||||
|
||||
63
src/osgVolume/Property.cpp
Normal file
63
src/osgVolume/Property.cpp
Normal file
@@ -0,0 +1,63 @@
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
|
||||
*
|
||||
* This library is open source and may be redistributed and/or modified under
|
||||
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
|
||||
* (at your option) any later version. The full license is in LICENSE file
|
||||
* included with this distribution, and on the openscenegraph.org website.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* OpenSceneGraph Public License for more details.
|
||||
*/
|
||||
|
||||
#include <osgVolume/Property>
|
||||
|
||||
using namespace osgVolume;
|
||||
|
||||
Property::Property()
|
||||
{
|
||||
}
|
||||
|
||||
Property::Property(const Property& property,const osg::CopyOp& copyop):
|
||||
osg::Object(property,copyop)
|
||||
{
|
||||
}
|
||||
|
||||
Property::~Property()
|
||||
{
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// CompositeProperty
|
||||
//
|
||||
CompositeProperty::CompositeProperty()
|
||||
{
|
||||
}
|
||||
|
||||
CompositeProperty::CompositeProperty(const CompositeProperty& compositeProperty,const osg::CopyOp& copyop):
|
||||
Property(compositeProperty,copyop)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void CompositeProperty::clear()
|
||||
{
|
||||
_properties.clear();
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TransferFunctionProperty
|
||||
//
|
||||
TransferFunctionProperty::TransferFunctionProperty(osg::TransferFunction* tf):
|
||||
_tf(tf)
|
||||
{
|
||||
}
|
||||
|
||||
TransferFunctionProperty::TransferFunctionProperty(const TransferFunctionProperty& tfp,const osg::CopyOp& copyop):
|
||||
Property(tfp,copyop),
|
||||
_tf(tfp._tf)
|
||||
{
|
||||
}
|
||||
@@ -63,22 +63,13 @@ void ShaderTechnique::init()
|
||||
osg::Image* image_3d = 0;
|
||||
osg::TransferFunction1D* tf = 0;
|
||||
osgVolume::Locator* masterLocator = _volumeTile->getLocator();
|
||||
for(unsigned int i = 0;
|
||||
i < _volumeTile->getNumLayers();
|
||||
++i)
|
||||
|
||||
image_3d = _volumeTile->getLayer()->getImage();
|
||||
|
||||
if (_volumeTile->getLayer() && !masterLocator)
|
||||
{
|
||||
if (_volumeTile->getLayer(i) && !masterLocator)
|
||||
{
|
||||
masterLocator = _volumeTile->getLayer(i)->getLocator();
|
||||
osg::notify(osg::NOTICE)<<"assigning locator = "<<masterLocator<<std::endl;
|
||||
}
|
||||
|
||||
if (_volumeTile->getLayer(i)->getImage())
|
||||
{
|
||||
osg::notify(osg::NOTICE)<<"assigning image = "<<std::endl;
|
||||
image_3d = _volumeTile->getLayer(i)->getImage();
|
||||
tf = dynamic_cast<osg::TransferFunction1D*>(_volumeTile->getLayer(i)->getTransferFunction());
|
||||
}
|
||||
masterLocator = _volumeTile->getLayer()->getLocator();
|
||||
osg::notify(osg::NOTICE)<<"assigning locator = "<<masterLocator<<std::endl;
|
||||
}
|
||||
|
||||
osg::Matrix matrix;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
|
||||
*
|
||||
* This library is open source and may be redistributed and/or modified under
|
||||
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2008 Robert Osfield
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
|
||||
*
|
||||
* This library is open source and may be redistributed and/or modified under
|
||||
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2008 Robert Osfield
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
|
||||
*
|
||||
* This library is open source and may be redistributed and/or modified under
|
||||
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2008 Robert Osfield
|
||||
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
|
||||
*
|
||||
* This library is open source and may be redistributed and/or modified under
|
||||
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
|
||||
@@ -35,7 +35,7 @@ VolumeTile::VolumeTile(const VolumeTile& volumeTile,const osg::CopyOp& copyop):
|
||||
_volume(0),
|
||||
_dirty(false),
|
||||
_hasBeenTraversal(false),
|
||||
_layers(volumeTile._layers)
|
||||
_layer(volumeTile._layer)
|
||||
{
|
||||
if (volumeTile.getVolumeTechnique()) ;
|
||||
{
|
||||
@@ -48,13 +48,6 @@ VolumeTile::~VolumeTile()
|
||||
if (_volume) setVolume(0);
|
||||
}
|
||||
|
||||
void VolumeTile::setLayer(unsigned int i, Layer* layer)
|
||||
{
|
||||
if (_layers.size() <= i) _layers.resize(i+1);
|
||||
|
||||
_layers[i] = layer;
|
||||
}
|
||||
|
||||
void VolumeTile::setVolume(Volume* volume)
|
||||
{
|
||||
if (_volume == volume) return;
|
||||
@@ -165,16 +158,7 @@ void VolumeTile::setDirty(bool dirty)
|
||||
|
||||
osg::BoundingSphere VolumeTile::computeBound() const
|
||||
{
|
||||
osg::BoundingSphere bs;
|
||||
if (_layer.valid()) return _layer->computeBound();
|
||||
|
||||
for(Layers::const_iterator itr = _layers.begin();
|
||||
itr != _layers.end();
|
||||
++itr)
|
||||
{
|
||||
if (itr->valid()) bs.expandBy((*itr)->computeBound());
|
||||
}
|
||||
|
||||
return bs;
|
||||
|
||||
return bs;
|
||||
return osg::BoundingSphere();
|
||||
}
|
||||
|
||||
89
src/osgWrappers/osgVolume/FixedFunctionTechnique.cpp
Normal file
89
src/osgWrappers/osgVolume/FixedFunctionTechnique.cpp
Normal file
@@ -0,0 +1,89 @@
|
||||
// ***************************************************************************
|
||||
//
|
||||
// Generated automatically by genwrapper.
|
||||
// Please DO NOT EDIT this file!
|
||||
//
|
||||
// ***************************************************************************
|
||||
|
||||
#include <osgIntrospection/ReflectionMacros>
|
||||
#include <osgIntrospection/TypedMethodInfo>
|
||||
#include <osgIntrospection/StaticMethodInfo>
|
||||
#include <osgIntrospection/Attributes>
|
||||
|
||||
#include <osg/CopyOp>
|
||||
#include <osg/NodeVisitor>
|
||||
#include <osg/Object>
|
||||
#include <osgUtil/CullVisitor>
|
||||
#include <osgUtil/UpdateVisitor>
|
||||
#include <osgVolume/FixedFunctionTechnique>
|
||||
|
||||
// Must undefine IN and OUT macros defined in Windows headers
|
||||
#ifdef IN
|
||||
#undef IN
|
||||
#endif
|
||||
#ifdef OUT
|
||||
#undef OUT
|
||||
#endif
|
||||
|
||||
BEGIN_OBJECT_REFLECTOR(osgVolume::FixedFunctionTechnique)
|
||||
I_DeclaringFile("osgVolume/FixedFunctionTechnique");
|
||||
I_BaseType(osgVolume::VolumeTechnique);
|
||||
I_Constructor0(____FixedFunctionTechnique,
|
||||
"",
|
||||
"");
|
||||
I_ConstructorWithDefaults2(IN, const osgVolume::FixedFunctionTechnique &, x, , IN, const osg::CopyOp &, copyop, osg::CopyOp::SHALLOW_COPY,
|
||||
____FixedFunctionTechnique__C5_FixedFunctionTechnique_R1__C5_osg_CopyOp_R1,
|
||||
"Copy constructor using CopyOp to manage deep vs shallow copy. ",
|
||||
"");
|
||||
I_Method0(osg::Object *, cloneType,
|
||||
Properties::VIRTUAL,
|
||||
__osg_Object_P1__cloneType,
|
||||
"Clone the type of an object, with Object* return type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method1(osg::Object *, clone, IN, const osg::CopyOp &, copyop,
|
||||
Properties::VIRTUAL,
|
||||
__osg_Object_P1__clone__C5_osg_CopyOp_R1,
|
||||
"Clone an object, with Object* return type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method1(bool, isSameKindAs, IN, const osg::Object *, obj,
|
||||
Properties::VIRTUAL,
|
||||
__bool__isSameKindAs__C5_osg_Object_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method0(const char *, libraryName,
|
||||
Properties::VIRTUAL,
|
||||
__C5_char_P1__libraryName,
|
||||
"return the name of the object's library. ",
|
||||
"Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. ");
|
||||
I_Method0(const char *, className,
|
||||
Properties::VIRTUAL,
|
||||
__C5_char_P1__className,
|
||||
"return the name of the object's class type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method0(void, init,
|
||||
Properties::VIRTUAL,
|
||||
__void__init,
|
||||
"",
|
||||
"");
|
||||
I_Method1(void, update, IN, osgUtil::UpdateVisitor *, nv,
|
||||
Properties::VIRTUAL,
|
||||
__void__update__osgUtil_UpdateVisitor_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method1(void, cull, IN, osgUtil::CullVisitor *, nv,
|
||||
Properties::VIRTUAL,
|
||||
__void__cull__osgUtil_CullVisitor_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method0(void, cleanSceneGraph,
|
||||
Properties::VIRTUAL,
|
||||
__void__cleanSceneGraph,
|
||||
"Clean scene graph from any terrain technique specific nodes. ",
|
||||
"");
|
||||
I_Method1(void, traverse, IN, osg::NodeVisitor &, nv,
|
||||
Properties::VIRTUAL,
|
||||
__void__traverse__osg_NodeVisitor_R1,
|
||||
"Traverse the terrain subgraph. ",
|
||||
"");
|
||||
END_REFLECTOR
|
||||
|
||||
@@ -15,10 +15,10 @@
|
||||
#include <osg/Image>
|
||||
#include <osg/Object>
|
||||
#include <osg/Texture>
|
||||
#include <osg/TransferFunction>
|
||||
#include <osg/Vec4>
|
||||
#include <osgVolume/Layer>
|
||||
#include <osgVolume/Locator>
|
||||
#include <osgVolume/Property>
|
||||
|
||||
// Must undefine IN and OUT macros defined in Windows headers
|
||||
#ifdef IN
|
||||
@@ -309,20 +309,20 @@ BEGIN_OBJECT_REFLECTOR(osgVolume::Layer)
|
||||
__C5_osg_Image_P1__getImage,
|
||||
"Return const image associated with layer if supported. ",
|
||||
"");
|
||||
I_Method1(void, setTransferFunction, IN, osg::TransferFunction *, tf,
|
||||
I_Method1(void, setProperty, IN, osgVolume::Property *, property,
|
||||
Properties::NON_VIRTUAL,
|
||||
__void__setTransferFunction__osg_TransferFunction_P1,
|
||||
"Set the optional transfer function that maps the imagery pixels to new colours. ",
|
||||
"Transfer function may be implemented on the GPU or via pre-processing step. ");
|
||||
I_Method0(osg::TransferFunction *, getTransferFunction,
|
||||
Properties::NON_VIRTUAL,
|
||||
__osg_TransferFunction_P1__getTransferFunction,
|
||||
"Get the transfer function. ",
|
||||
__void__setProperty__Property_P1,
|
||||
"Set the Property (or Properties via the CompositeProperty) that informs the VolumeTechnique how this layer should be rendered. ",
|
||||
"");
|
||||
I_Method0(const osg::TransferFunction *, getTransferFunction,
|
||||
I_Method0(osgVolume::Property *, getProperty,
|
||||
Properties::NON_VIRTUAL,
|
||||
__C5_osg_TransferFunction_P1__getTransferFunction,
|
||||
"Get the const transfer function. ",
|
||||
__Property_P1__getProperty,
|
||||
"Get the Property that informs the VolumeTechnique how this layer should be rendered. ",
|
||||
"");
|
||||
I_Method0(const osgVolume::Property *, getProperty,
|
||||
Properties::NON_VIRTUAL,
|
||||
__C5_Property_P1__getProperty,
|
||||
"Get the const Property that informs the VolumeTechnique how this layer should be rendered. ",
|
||||
"");
|
||||
I_Method0(void, dirty,
|
||||
Properties::VIRTUAL,
|
||||
@@ -365,8 +365,8 @@ BEGIN_OBJECT_REFLECTOR(osgVolume::Layer)
|
||||
I_SimpleProperty(unsigned, ModifiedCount,
|
||||
0,
|
||||
__void__setModifiedCount__unsigned);
|
||||
I_SimpleProperty(osg::TransferFunction *, TransferFunction,
|
||||
__osg_TransferFunction_P1__getTransferFunction,
|
||||
__void__setTransferFunction__osg_TransferFunction_P1);
|
||||
I_SimpleProperty(osgVolume::Property *, Property,
|
||||
__Property_P1__getProperty,
|
||||
__void__setProperty__Property_P1);
|
||||
END_REFLECTOR
|
||||
|
||||
|
||||
221
src/osgWrappers/osgVolume/Property.cpp
Normal file
221
src/osgWrappers/osgVolume/Property.cpp
Normal file
@@ -0,0 +1,221 @@
|
||||
// ***************************************************************************
|
||||
//
|
||||
// Generated automatically by genwrapper.
|
||||
// Please DO NOT EDIT this file!
|
||||
//
|
||||
// ***************************************************************************
|
||||
|
||||
#include <osgIntrospection/ReflectionMacros>
|
||||
#include <osgIntrospection/TypedMethodInfo>
|
||||
#include <osgIntrospection/StaticMethodInfo>
|
||||
#include <osgIntrospection/Attributes>
|
||||
|
||||
#include <osg/CopyOp>
|
||||
#include <osg/Object>
|
||||
#include <osg/TransferFunction>
|
||||
#include <osgVolume/Property>
|
||||
|
||||
// Must undefine IN and OUT macros defined in Windows headers
|
||||
#ifdef IN
|
||||
#undef IN
|
||||
#endif
|
||||
#ifdef OUT
|
||||
#undef OUT
|
||||
#endif
|
||||
|
||||
TYPE_NAME_ALIAS(std::vector< osg::ref_ptr< osgVolume::Property > >, osgVolume::CompositeProperty::Properties)
|
||||
|
||||
BEGIN_OBJECT_REFLECTOR(osgVolume::CompositeProperty)
|
||||
I_DeclaringFile("osgVolume/Property");
|
||||
I_BaseType(osgVolume::Property);
|
||||
I_Constructor0(____CompositeProperty,
|
||||
"",
|
||||
"");
|
||||
I_ConstructorWithDefaults2(IN, const osgVolume::CompositeProperty &, compositeProperty, , IN, const osg::CopyOp &, copyop, osg::CopyOp::SHALLOW_COPY,
|
||||
____CompositeProperty__C5_CompositeProperty_R1__C5_osg_CopyOp_R1,
|
||||
"Copy constructor using CopyOp to manage deep vs shallow copy. ",
|
||||
"");
|
||||
I_Method0(osg::Object *, cloneType,
|
||||
Properties::VIRTUAL,
|
||||
__osg_Object_P1__cloneType,
|
||||
"Clone the type of an object, with Object* return type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method1(osg::Object *, clone, IN, const osg::CopyOp &, copyop,
|
||||
Properties::VIRTUAL,
|
||||
__osg_Object_P1__clone__C5_osg_CopyOp_R1,
|
||||
"Clone an object, with Object* return type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method1(bool, isSameKindAs, IN, const osg::Object *, obj,
|
||||
Properties::VIRTUAL,
|
||||
__bool__isSameKindAs__C5_osg_Object_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method0(const char *, libraryName,
|
||||
Properties::VIRTUAL,
|
||||
__C5_char_P1__libraryName,
|
||||
"return the name of the object's library. ",
|
||||
"Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. ");
|
||||
I_Method0(const char *, className,
|
||||
Properties::VIRTUAL,
|
||||
__C5_char_P1__className,
|
||||
"return the name of the object's class type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method0(void, clear,
|
||||
Properties::NON_VIRTUAL,
|
||||
__void__clear,
|
||||
"",
|
||||
"");
|
||||
I_Method2(void, setProperty, IN, unsigned int, i, IN, osgVolume::Property *, property,
|
||||
Properties::NON_VIRTUAL,
|
||||
__void__setProperty__unsigned_int__Property_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method1(osgVolume::Property *, getProperty, IN, unsigned int, i,
|
||||
Properties::NON_VIRTUAL,
|
||||
__Property_P1__getProperty__unsigned_int,
|
||||
"",
|
||||
"");
|
||||
I_Method1(const osgVolume::Property *, getProperty, IN, unsigned int, i,
|
||||
Properties::NON_VIRTUAL,
|
||||
__C5_Property_P1__getProperty__unsigned_int,
|
||||
"",
|
||||
"");
|
||||
I_Method1(void, addProperty, IN, osgVolume::Property *, property,
|
||||
Properties::NON_VIRTUAL,
|
||||
__void__addProperty__Property_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method1(void, removeProperty, IN, unsigned int, i,
|
||||
Properties::NON_VIRTUAL,
|
||||
__void__removeProperty__unsigned_int,
|
||||
"",
|
||||
"");
|
||||
I_Method0(unsigned int, getNumProperties,
|
||||
Properties::NON_VIRTUAL,
|
||||
__unsigned_int__getNumProperties,
|
||||
"",
|
||||
"");
|
||||
I_IndexedProperty(osgVolume::Property *, Property,
|
||||
__Property_P1__getProperty__unsigned_int,
|
||||
__void__setProperty__unsigned_int__Property_P1,
|
||||
0);
|
||||
END_REFLECTOR
|
||||
|
||||
BEGIN_OBJECT_REFLECTOR(osgVolume::Property)
|
||||
I_DeclaringFile("osgVolume/Property");
|
||||
I_BaseType(osg::Object);
|
||||
I_Constructor0(____Property,
|
||||
"",
|
||||
"");
|
||||
I_ConstructorWithDefaults2(IN, const osgVolume::Property &, x, , IN, const osg::CopyOp &, copyop, osg::CopyOp::SHALLOW_COPY,
|
||||
____Property__C5_Property_R1__C5_osg_CopyOp_R1,
|
||||
"Copy constructor using CopyOp to manage deep vs shallow copy. ",
|
||||
"");
|
||||
I_Method0(osg::Object *, cloneType,
|
||||
Properties::VIRTUAL,
|
||||
__osg_Object_P1__cloneType,
|
||||
"Clone the type of an object, with Object* return type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method1(osg::Object *, clone, IN, const osg::CopyOp &, copyop,
|
||||
Properties::VIRTUAL,
|
||||
__osg_Object_P1__clone__C5_osg_CopyOp_R1,
|
||||
"Clone an object, with Object* return type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method1(bool, isSameKindAs, IN, const osg::Object *, obj,
|
||||
Properties::VIRTUAL,
|
||||
__bool__isSameKindAs__C5_osg_Object_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method0(const char *, libraryName,
|
||||
Properties::VIRTUAL,
|
||||
__C5_char_P1__libraryName,
|
||||
"return the name of the object's library. ",
|
||||
"Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. ");
|
||||
I_Method0(const char *, className,
|
||||
Properties::VIRTUAL,
|
||||
__C5_char_P1__className,
|
||||
"return the name of the object's class type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
END_REFLECTOR
|
||||
|
||||
BEGIN_OBJECT_REFLECTOR(osgVolume::TransferFunctionProperty)
|
||||
I_DeclaringFile("osgVolume/Property");
|
||||
I_BaseType(osgVolume::Property);
|
||||
I_ConstructorWithDefaults1(IN, osg::TransferFunction *, tf, 0,
|
||||
Properties::NON_EXPLICIT,
|
||||
____TransferFunctionProperty__osg_TransferFunction_P1,
|
||||
"",
|
||||
"");
|
||||
I_ConstructorWithDefaults2(IN, const osgVolume::TransferFunctionProperty &, tfProperty, , IN, const osg::CopyOp &, copyop, osg::CopyOp::SHALLOW_COPY,
|
||||
____TransferFunctionProperty__C5_TransferFunctionProperty_R1__C5_osg_CopyOp_R1,
|
||||
"Copy constructor using CopyOp to manage deep vs shallow copy. ",
|
||||
"");
|
||||
I_Method0(osg::Object *, cloneType,
|
||||
Properties::VIRTUAL,
|
||||
__osg_Object_P1__cloneType,
|
||||
"Clone the type of an object, with Object* return type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method1(osg::Object *, clone, IN, const osg::CopyOp &, copyop,
|
||||
Properties::VIRTUAL,
|
||||
__osg_Object_P1__clone__C5_osg_CopyOp_R1,
|
||||
"Clone an object, with Object* return type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method1(bool, isSameKindAs, IN, const osg::Object *, obj,
|
||||
Properties::VIRTUAL,
|
||||
__bool__isSameKindAs__C5_osg_Object_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method0(const char *, libraryName,
|
||||
Properties::VIRTUAL,
|
||||
__C5_char_P1__libraryName,
|
||||
"return the name of the object's library. ",
|
||||
"Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. ");
|
||||
I_Method0(const char *, className,
|
||||
Properties::VIRTUAL,
|
||||
__C5_char_P1__className,
|
||||
"return the name of the object's class type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
END_REFLECTOR
|
||||
|
||||
BEGIN_VALUE_REFLECTOR(osg::ref_ptr< osgVolume::Property >)
|
||||
I_DeclaringFile("osg/ref_ptr");
|
||||
I_Constructor0(____ref_ptr,
|
||||
"",
|
||||
"");
|
||||
I_Constructor1(IN, osgVolume::Property *, ptr,
|
||||
Properties::NON_EXPLICIT,
|
||||
____ref_ptr__T_P1,
|
||||
"",
|
||||
"");
|
||||
I_Constructor1(IN, const osg::ref_ptr< osgVolume::Property > &, rp,
|
||||
Properties::NON_EXPLICIT,
|
||||
____ref_ptr__C5_ref_ptr_R1,
|
||||
"",
|
||||
"");
|
||||
I_Method0(osgVolume::Property *, get,
|
||||
Properties::NON_VIRTUAL,
|
||||
__T_P1__get,
|
||||
"",
|
||||
"");
|
||||
I_Method0(bool, valid,
|
||||
Properties::NON_VIRTUAL,
|
||||
__bool__valid,
|
||||
"",
|
||||
"");
|
||||
I_Method0(osgVolume::Property *, release,
|
||||
Properties::NON_VIRTUAL,
|
||||
__T_P1__release,
|
||||
"",
|
||||
"");
|
||||
I_Method1(void, swap, IN, osg::ref_ptr< osgVolume::Property > &, rp,
|
||||
Properties::NON_VIRTUAL,
|
||||
__void__swap__ref_ptr_R1,
|
||||
"",
|
||||
"");
|
||||
I_SimpleProperty(osgVolume::Property *, ,
|
||||
__T_P1__get,
|
||||
0);
|
||||
END_REFLECTOR
|
||||
|
||||
STD_VECTOR_REFLECTOR(std::vector< osg::ref_ptr< osgVolume::Property > >)
|
||||
|
||||
89
src/osgWrappers/osgVolume/ShaderTechnique.cpp
Normal file
89
src/osgWrappers/osgVolume/ShaderTechnique.cpp
Normal file
@@ -0,0 +1,89 @@
|
||||
// ***************************************************************************
|
||||
//
|
||||
// Generated automatically by genwrapper.
|
||||
// Please DO NOT EDIT this file!
|
||||
//
|
||||
// ***************************************************************************
|
||||
|
||||
#include <osgIntrospection/ReflectionMacros>
|
||||
#include <osgIntrospection/TypedMethodInfo>
|
||||
#include <osgIntrospection/StaticMethodInfo>
|
||||
#include <osgIntrospection/Attributes>
|
||||
|
||||
#include <osg/CopyOp>
|
||||
#include <osg/NodeVisitor>
|
||||
#include <osg/Object>
|
||||
#include <osgUtil/CullVisitor>
|
||||
#include <osgUtil/UpdateVisitor>
|
||||
#include <osgVolume/ShaderTechnique>
|
||||
|
||||
// Must undefine IN and OUT macros defined in Windows headers
|
||||
#ifdef IN
|
||||
#undef IN
|
||||
#endif
|
||||
#ifdef OUT
|
||||
#undef OUT
|
||||
#endif
|
||||
|
||||
BEGIN_OBJECT_REFLECTOR(osgVolume::ShaderTechnique)
|
||||
I_DeclaringFile("osgVolume/ShaderTechnique");
|
||||
I_BaseType(osgVolume::VolumeTechnique);
|
||||
I_Constructor0(____ShaderTechnique,
|
||||
"",
|
||||
"");
|
||||
I_ConstructorWithDefaults2(IN, const osgVolume::ShaderTechnique &, x, , IN, const osg::CopyOp &, copyop, osg::CopyOp::SHALLOW_COPY,
|
||||
____ShaderTechnique__C5_ShaderTechnique_R1__C5_osg_CopyOp_R1,
|
||||
"",
|
||||
"");
|
||||
I_Method0(osg::Object *, cloneType,
|
||||
Properties::VIRTUAL,
|
||||
__osg_Object_P1__cloneType,
|
||||
"Clone the type of an object, with Object* return type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method1(osg::Object *, clone, IN, const osg::CopyOp &, copyop,
|
||||
Properties::VIRTUAL,
|
||||
__osg_Object_P1__clone__C5_osg_CopyOp_R1,
|
||||
"Clone an object, with Object* return type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method1(bool, isSameKindAs, IN, const osg::Object *, obj,
|
||||
Properties::VIRTUAL,
|
||||
__bool__isSameKindAs__C5_osg_Object_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method0(const char *, libraryName,
|
||||
Properties::VIRTUAL,
|
||||
__C5_char_P1__libraryName,
|
||||
"return the name of the object's library. ",
|
||||
"Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. ");
|
||||
I_Method0(const char *, className,
|
||||
Properties::VIRTUAL,
|
||||
__C5_char_P1__className,
|
||||
"return the name of the object's class type. ",
|
||||
"Must be defined by derived classes. ");
|
||||
I_Method0(void, init,
|
||||
Properties::VIRTUAL,
|
||||
__void__init,
|
||||
"",
|
||||
"");
|
||||
I_Method1(void, update, IN, osgUtil::UpdateVisitor *, nv,
|
||||
Properties::VIRTUAL,
|
||||
__void__update__osgUtil_UpdateVisitor_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method1(void, cull, IN, osgUtil::CullVisitor *, nv,
|
||||
Properties::VIRTUAL,
|
||||
__void__cull__osgUtil_CullVisitor_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method0(void, cleanSceneGraph,
|
||||
Properties::VIRTUAL,
|
||||
__void__cleanSceneGraph,
|
||||
"Clean scene graph from any terrain technique specific nodes. ",
|
||||
"");
|
||||
I_Method1(void, traverse, IN, osg::NodeVisitor &, nv,
|
||||
Properties::VIRTUAL,
|
||||
__void__traverse__osg_NodeVisitor_R1,
|
||||
"Traverse the terrain subgraph. ",
|
||||
"");
|
||||
END_REFLECTOR
|
||||
|
||||
@@ -138,29 +138,19 @@ BEGIN_OBJECT_REFLECTOR(osgVolume::VolumeTile)
|
||||
__C5_Locator_P1__getLocator,
|
||||
"",
|
||||
"");
|
||||
I_Method2(void, setLayer, IN, unsigned int, i, IN, osgVolume::Layer *, layer,
|
||||
I_Method1(void, setLayer, IN, osgVolume::Layer *, layer,
|
||||
Properties::NON_VIRTUAL,
|
||||
__void__setLayer__unsigned_int__Layer_P1,
|
||||
__void__setLayer__Layer_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method1(osgVolume::Layer *, getLayer, IN, unsigned int, i,
|
||||
I_Method0(osgVolume::Layer *, getLayer,
|
||||
Properties::NON_VIRTUAL,
|
||||
__Layer_P1__getLayer__unsigned_int,
|
||||
__Layer_P1__getLayer,
|
||||
"",
|
||||
"");
|
||||
I_Method1(const osgVolume::Layer *, getImage, IN, unsigned int, i,
|
||||
I_Method0(const osgVolume::Layer *, getImage,
|
||||
Properties::NON_VIRTUAL,
|
||||
__C5_Layer_P1__getImage__unsigned_int,
|
||||
"",
|
||||
"");
|
||||
I_Method1(void, addLayer, IN, osgVolume::Layer *, layer,
|
||||
Properties::NON_VIRTUAL,
|
||||
__void__addLayer__Layer_P1,
|
||||
"",
|
||||
"");
|
||||
I_Method0(unsigned int, getNumLayers,
|
||||
Properties::NON_VIRTUAL,
|
||||
__unsigned_int__getNumLayers,
|
||||
__C5_Layer_P1__getImage,
|
||||
"",
|
||||
"");
|
||||
I_Method1(void, setVolumeTechnique, IN, osgVolume::VolumeTechnique *, VolumeTechnique,
|
||||
@@ -196,13 +186,12 @@ BEGIN_OBJECT_REFLECTOR(osgVolume::VolumeTile)
|
||||
I_SimpleProperty(bool, Dirty,
|
||||
__bool__getDirty,
|
||||
__void__setDirty__bool);
|
||||
I_ArrayProperty(osgVolume::Layer *, Layer,
|
||||
__Layer_P1__getLayer__unsigned_int,
|
||||
__void__setLayer__unsigned_int__Layer_P1,
|
||||
__unsigned_int__getNumLayers,
|
||||
__void__addLayer__Layer_P1,
|
||||
0,
|
||||
0);
|
||||
I_SimpleProperty(const osgVolume::Layer *, Image,
|
||||
__C5_Layer_P1__getImage,
|
||||
0);
|
||||
I_SimpleProperty(osgVolume::Layer *, Layer,
|
||||
__Layer_P1__getLayer,
|
||||
__void__setLayer__Layer_P1);
|
||||
I_SimpleProperty(osgVolume::Locator *, Locator,
|
||||
__Locator_P1__getLocator,
|
||||
__void__setLocator__Locator_P1);
|
||||
|
||||
Reference in New Issue
Block a user