Visualization Library

A lightweight C++ OpenGL middleware for 2D/3D graphics
[Home] [Tutorials] [All Classes] [Grouped Classes]

vl::Object Class Reference

The base class for all the reference counted objects. More...

#include <Object.hpp>

Inheritance diagram for vl::Object:

vl::BufferedStream< unsigned char, 128 *1024 > vl::Collection< Shader > vl::Actor vl::ActorRenderingCallback vl::ActorTreeAbstract vl::ArrayAbstract vl::BezierPatch vl::Buffer vl::BufferedStream< Element_Type, Chunk_Size > vl::Camera vl::CatmullRomInterpolator< T > vl::Collection< T > vl::DrawPixels::Pixels vl::EdgeExtractor vl::Effect vl::EnableSet vl::Extrusion vl::FBOAttachmentAbstract vl::FileSystem vl::Font vl::FontManager vl::Frustum vl::GLSLShader vl::Glyph vl::Image vl::Interpolator vl::KeyValues vl::LinearInterpolator< T > vl::LoadCallback vl::LoadWriterManager vl::LODEvaluator vl::Log vl::ObjMaterial vl::ObjMesh vl::OpenGLContext vl::Plane vl::PlyLoader::PlyElement vl::PlyLoader::PlyPropertyAbstract vl::PolygonSimplifier vl::Portal vl::Primitives vl::RayIntersection vl::RayIntersector vl::Renderable vl::Renderer vl::RenderingAbstract vl::RenderingCallback vl::RenderQueue vl::RenderQueueSorter vl::RenderState vl::RenderStateSet vl::RenderTarget vl::RenderToken vl::ResourceDatabase vl::ResourceLoadWriter vl::SceneManager vl::Scissor vl::Sector vl::Sector::VisibilityCallback vl::Shader vl::ShaderNode vl::Tessellator vl::TexParameter vl::Texture vl::Texture::SetupParams vl::Time vl::Transform vl::UIEventListener vl::Uniform vl::UniformSet vl::VertexAttributeArray vl::VertexMapper vl::Viewport vl::VirtualDirectory vl::VirtualFile vl::WriteCallback vl::ZippedFileInfo vlMolecule::Atom vlMolecule::Bond vlMolecule::Molecule vlVG::VectorGraphics vlVolume::Volume vlVolume::VolumeInfo vlVolume::VolumePlot

List of all members.

Public Member Functions

virtual const char * className ()
 Returns the name of the class.
 Object ()
 Object (const Object &other)
Objectoperator= (const Object &other)
const std::string & name () const
void setName (const std::string &name)
int referenceCount () const
void incReference ()
void decReference ()
void setAutomaticDelete (bool autodel_on)
 If set to true the Object is deleted when its reference count reaches 0.
bool automaticDelete () const
 If set to true the Object is deleted when its reference count reaches 0.
template<class T >
T * as ()
 Casts an Object to the specified class.
template<class T >
const T * as () const
 Casts an Object to the specified class.

Protected Member Functions

virtual ~Object ()

Protected Attributes

std::string mName


Detailed Description

The base class for all the reference counted objects.

See also vl::ref.


Constructor & Destructor Documentation

vl::Object::Object (  )  [inline]

vl::Object::Object ( const Object other  )  [inline]

Object::~Object (  )  [protected, virtual]


Member Function Documentation

virtual const char* vl::Object::className (  )  [inline, virtual]

Returns the name of the class.

Reimplemented in vl::Actor, vl::ActorKdTree, vl::ActorTree, vl::ActorTreeAbstract, vl::ArrayAbstract, vl::Array< vector_type, scalar_type, gl_size, gl_type >, vl::BezierPatch, vl::BezierSurface, vl::Billboard, vl::BlitFramebuffer, vl::Buffer, vl::BufferedStream< Element_Type, Chunk_Size >, vl::Camera, vl::Clear, vl::ClipPlane, vl::Collection< T >, vl::CopyTexSubImage1D, vl::CopyTexSubImage2D, vl::CopyTexSubImage3D, vl::DepthSortCallback, vl::DiskDirectory, vl::DiskFile, vl::DistanceLODEvaluator, vl::VertexMapper, vl::DoubleVertexRemover, vl::DrawArrays, vl::DrawElements< index_type, Tgltype, arr_type >, vl::DrawPixels, vl::EdgeExtractor, vl::EdgeRenderer, vl::EdgeUpdateCallback, vl::ShaderSequence, vl::Effect, vl::FileSystem, vl::Glyph, vl::Font, vl::FontManager, vl::FBOAttachmentAbstract, vl::FBORenderbufferAttachment, vl::FBOColorBufferAttachment, vl::FBODepthBufferAttachment, vl::FBOStencilBufferAttachment, vl::FBODepthStencilBufferAttachment, vl::FBOTexture1DAttachment, vl::FBOTexture2DAttachment, vl::FBOTextureAttachment, vl::FBOTexture3DAttachment, vl::FBOTextureLayerAttachment, vl::FBORenderTarget, vl::Frustum, vl::Geometry, vl::GeometryLoadCallback, vl::GhostCameraManipulator, vl::GLBufferObject, vl::GLSLShader, vl::GLSLVertexShader, vl::GLSLFragmentShader, vl::GLSLGeometryShader, vl::GLSLProgram, vl::GZipCodec, vl::Image, vl::Light, vl::LoadWriterManager, vl::LODEvaluator, vl::Log, vl::StandardLog, vl::MemoryDirectory, vl::MemoryFile, vl::MorphingCallback, vl::MorphingActor, vl::OpenGLContext, vl::PixelLODEvaluator, vl::Plane, vl::PolygonSimplifier, vl::Primitives, vl::RayIntersection, vl::RayIntersectionGeometry, vl::RayIntersector, vl::ReadPixels, vl::Renderable, vl::Renderer, vl::Rendering, vl::RenderingCallback, vl::RenderingTree, vl::RenderQueue, vl::RenderQueueSorter, vl::RenderQueueSorterByShader, vl::RenderQueueSorterByRenderable, vl::RenderQueueSorterBasic, vl::RenderQueueSorterStandard, vl::RenderQueueSorterOcclusion, vl::RenderQueueSorterAggressive, vl::RenderState, vl::RenderTarget, vl::RenderToken, vl::ResourceDatabase, vl::ResourceLoadWriter, vl::SceneManager, vl::SceneManagerActorKdTree, vl::SceneManagerActorTree, vl::SceneManagerBVH< T >, vl::Scissor, vl::PixelTransfer, vl::Hint, vl::CullFace, vl::FrontFace, vl::DepthFunc, vl::DepthMask, vl::PolygonMode, vl::ShadeModel, vl::BlendFunc, vl::BlendEquation, vl::SampleCoverage, vl::AlphaFunc, vl::Material, vl::LightModel, vl::Fog, vl::PolygonOffset, vl::LogicOp, vl::DepthRange, vl::LineWidth, vl::PointSize, vl::PolygonStipple, vl::LineStipple, vl::PointParameter, vl::StencilFunc, vl::StencilOp, vl::StencilMask, vl::BlendColor, vl::ColorMask, vl::TextureMatrix, vl::TexEnv, vl::TexGen, vl::TextureUnit, vl::RenderStateSet, vl::EnableSet, vl::Shader, vl::ShaderNode, vl::Terrain, vl::Text, vl::TextStream, vl::TexParameter, vl::Texture, vl::Time, vl::TrackballManipulator, vl::Transform, vl::UIEventListener, vl::Uniform, vl::UniformSet, vl::VertexAttributeArray, vl::Viewport, vl::VirtualDirectory, vl::VirtualFile, vl::LoadWriter3DS, vl::LoadWriterAC3D, vl::LoadWriterBMP, vl::LoadWriterDAT, vl::LoadWriterDDS, vl::LoadWriterDICOM, vl::LoadWriterJPG, vl::LoadWriterMD2, vl::LoadWriterOBJ, vl::ObjMaterial, vl::ObjMesh, vl::LoadWriterPLY, vl::LoadWriterPNG, vl::LoadWriterSTL, vl::LoadWriterTGA, vl::LoadWriterTIFF, vl::ZippedDirectory, vl::ZippedFileInfo, vl::ZippedFile, vlut::Applet, vlVG::SceneManagerVectorGraphics, vlVG::VectorGraphics, vlVolume::Volume, vlVolume::VolumeInfo, vlMolecule::Atom, vlMolecule::Bond, vlMolecule::Molecule, vl::BufferedStream< unsigned char, 128 *1024 >, vl::Collection< LoadCallback >, vl::Collection< WriteCallback >, vl::Collection< VolumeInfo >, vl::Collection< Actor >, vl::Collection< VertexAttributeArray >, vl::Collection< TextureArray >, vl::Collection< ResourceLoadWriter >, vl::Collection< Primitives >, vl::Collection< Pixels >, vl::Collection< VirtualDirectory >, vl::Collection< Shader >, vl::Collection< SceneManager >, vl::Collection< VectorGraphics >, vl::Collection< RenderingAbstract >, vl::Collection< RenderingCallback >, vl::Collection< ActorRenderingCallback >, vl::SceneManagerBVH< ActorKdTree >, and vl::SceneManagerBVH< ActorTree >.

Object& vl::Object::operator= ( const Object other  )  [inline]

const std::string& vl::Object::name (  )  const [inline]

void vl::Object::setName ( const std::string &  name  )  [inline]

int vl::Object::referenceCount (  )  const [inline]

void vl::Object::incReference (  )  [inline]

void vl::Object::decReference (  )  [inline]

void vl::Object::setAutomaticDelete ( bool  autodel_on  )  [inline]

If set to true the Object is deleted when its reference count reaches 0.

bool vl::Object::automaticDelete (  )  const [inline]

If set to true the Object is deleted when its reference count reaches 0.

template<class T >
T* vl::Object::as (  )  [inline]

Casts an Object to the specified class.

template<class T >
const T* vl::Object::as (  )  const [inline]

Casts an Object to the specified class.


Member Data Documentation

std::string vl::Object::mName [protected]


The documentation for this class was generated from the following files:

Visualization Library v2009.08 Reference Documentation
Copyright 2005-2009 Michele Bosi. All rights reserved.
Updated on Sun Nov 8 14:29:00 2009.
Permission is granted to use this page to write and publish articles regarding Visualization Library.