# 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:

List of all members.

## Public Member Functions
virtual const char * | className ()
| Returns the name of the class.
| Object ()
| Object (const Object &other)
Object & | operator= (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]`

Reimplemented in vl::PlyLoader::PlyPropertyAbstract, and vl::PlyLoader::PlyElement.

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]`

Reimplemented in vl::PlyLoader::PlyPropertyAbstract, and vl::PlyLoader::PlyElement.

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

- E:/VisualizationLibrary/BuildSystem/VL_DISTRO/Visualization_Library_SDK/src/vl/Object.hpp
- E:/VisualizationLibrary/BuildSystem/VL_DISTRO/Visualization_Library_SDK/src/vl/Object.cpp

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