Back to index

nux  3.0.0
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Friends
nux::IOpenGLAsmShaderProgram Class Reference

#include <IOpenGLAsmShader.h>

Inheritance diagram for nux::IOpenGLAsmShaderProgram:
Inheritance graph
[legend]
Collaboration diagram for nux::IOpenGLAsmShaderProgram:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual ~IOpenGLAsmShaderProgram ()
void LoadVertexShader (const char *glslshader)
void LoadPixelShader (const char *glslshader)
void LoadIShaderFile (const char *ShaderFileName)
void LoadIShader (const char *ShaderCode)
void Link ()
bool IsValid ()
void Begin ()
void End ()
void SetVertexEnvParameter4dARB (unsigned int index, double x, double y, double z, double w)
void SetVertexEnvParameter4dvARB (unsigned int index, const double *params)
void SetVertexEnvParameter4fARB (unsigned int index, float x, float y, float z, float w)
void SetVertexEnvParameter4fvARB (unsigned int index, const float *params)
void SetVertexLocalParameter4dARB (unsigned int index, double x, double y, double z, double w)
void SetVertexLocalParameter4dvARB (unsigned int index, const double *params)
void SetVertexLocalParameter4fARB (unsigned int index, float x, float y, float z, float w)
void SetVertexLocalParameter4fvARB (unsigned int index, const float *params)
void SetFragmentEnvParameter4dARB (unsigned int index, double x, double y, double z, double w)
void SetFragmentEnvParameter4dvARB (unsigned int index, const double *params)
void SetFragmentEnvParameter4fARB (unsigned int index, float x, float y, float z, float w)
void SetFragmentEnvParameter4fvARB (unsigned int index, const float *params)
void SetFragmentLocalParameter4dARB (unsigned int index, double x, double y, double z, double w)
void SetFragmentLocalParameter4dvARB (unsigned int index, const double *params)
void SetFragmentLocalParameter4fARB (unsigned int index, float x, float y, float z, float w)
void SetFragmentLocalParameter4fvARB (unsigned int index, const float *params)
 NUX_DECLARE_OBJECT_TYPE (BaseObject, Trackable)
virtual int RefCount () const
OpenGLResourceType GetResourceType () const
int GetOpenGLID () const
bool Reference ()
 Increase reference count.
bool UnReference ()
 Decrease reference count.
virtual bool SinkReference ()
 Mark the object as owned.
virtual bool Dispose ()
 Destroy and object that has a floating reference.
int GetReferenceCount () const
 Get the reference count of this object.
std::string GetAllocationLoation () const
 NUX_DECLARE_ROOT_OBJECT_TYPE (Trackable)
bool OwnsTheReference ()
 Test if object reference is owned.
bool IsHeapAllocated ()
 Test if object was allocated dynamically.
bool IsDynamic () const
 Test if object was allocated dynamically.
virtual int GetObjectSize ()
 Return the size of allocated for this object.
bool SetProperty (std::string const &name, const char *value)
 If the property was not able to be set with the value, the method returns false.
template<typename T >
bool SetProperty (std::string const &name, T const &value)
template<typename T >
GetProperty (std::string const &name, T *foo=0)
void AddProperty (std::string const &name, PropertyBase *property)

Static Public Member Functions

static std::new_handler set_new_handler (std::new_handler handler)
static void * operator new (size_t size)
static void * operator new (size_t size, void *ptr)
static void operator delete (void *ptr)

Public Attributes

sigc::signal< void, Object * > object_destroyed
 Signal emitted immediately before the object is destroyed.

Protected Member Functions

void SetOwnedReference (bool b)

Protected Attributes

int _heap_allocated

Private Member Functions

 NUX_DECLARE_OBJECT_TYPE (IOpenGLAsmShaderProgram, IOpenGLResource)
 IOpenGLAsmShaderProgram (NString ShaderProgramName=NString("AsmShaderProgram"))

Private Attributes

std::vector< ObjectPtr
< IOpenGLAsmShader > > 
ShaderObjectList
NString _ShaderProgramName
ObjectPtr< IOpenGLAsmVertexShaderm_AsmVertexProgram
ObjectPtr< IOpenGLAsmPixelShaderm_AsmFragmentProgram

Friends

class GpuDevice

Detailed Description

Definition at line 94 of file IOpenGLAsmShader.h.


Constructor & Destructor Documentation

Definition at line 197 of file IOpenGLAsmShader.cpp.

  {
    _OpenGLID = 0;
  }
nux::IOpenGLAsmShaderProgram::IOpenGLAsmShaderProgram ( NString  ShaderProgramName = NString("AsmShaderProgram")) [private]

Member Function Documentation

void nux::Introspectable::AddProperty ( std::string const &  name,
PropertyBase property 
) [inline, inherited]

Definition at line 254 of file Property-inl.h.

{
  // check to see if it exists and if it does barf horribly as we can't
  // have two properties with the same name;
  properties_[name] = property;
}

Here is the caller graph for this function:

Definition at line 257 of file IOpenGLAsmShader.cpp.

  {
#ifndef NUX_OPENGLES_20
    CHECKGL(glEnable(GL_VERTEX_PROGRAM_ARB));
    CHECKGL(glBindProgramARB(GL_VERTEX_PROGRAM_ARB, m_AsmVertexProgram->GetOpenGLID()));
    CHECKGL(glEnable(GL_FRAGMENT_PROGRAM_ARB));
    CHECKGL(glBindProgramARB(GL_FRAGMENT_PROGRAM_ARB, m_AsmFragmentProgram->GetOpenGLID()));
#endif
  }

Here is the call graph for this function:

Here is the caller graph for this function:

bool nux::Object::Dispose ( ) [virtual, inherited]

Destroy and object that has a floating reference.

Returns:
True is the object has been destroyed

Reimplemented from nux::Trackable.

Definition at line 311 of file Object.cpp.

  {
    // The intent of the Dispose call is to destroy objects with a float
    // reference (reference count is equal to 1 and the '_owns_the_reference'
    // flag is set to false). In Nux, only widgets object can have a floating
    // reference.  And widgets are only visible if added to the widget tree.
    // When an object with a floating reference is added to the widget tree,
    // it becomes "owned'. It looses it floating reference status but it still
    // has a reference count number of 1.  In practice, since widgets must be
    // added to the widget tree, there should never be a need to call Dispose
    // (except in a few cases).

    // Dispose() was designed to only destroy objects with floating
    // references, while UnReference() destroys objects that are "owned".
    // That is now relaxed. Dispose() calls UnReference().
    return UnReference();
  }

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 267 of file IOpenGLAsmShader.cpp.

  {
#ifndef NUX_OPENGLES_20
    CHECKGL(glDisable(GL_VERTEX_PROGRAM_ARB));
    CHECKGL(glBindProgramARB(GL_VERTEX_PROGRAM_ARB, 0));
    CHECKGL(glDisable(GL_FRAGMENT_PROGRAM_ARB));
    CHECKGL(glBindProgramARB(GL_FRAGMENT_PROGRAM_ARB, 0));
#endif
  }

Here is the caller graph for this function:

std::string nux::Object::GetAllocationLoation ( ) const [inherited]

Definition at line 348 of file Object.cpp.

{
  std::ostringstream sout;
  sout << allocation_file_name_ << ":" << allocation_line_number_;
  return sout.str();
}

Here is the caller graph for this function:

int nux::Trackable::GetObjectSize ( ) [virtual, inherited]

Return the size of allocated for this object.

Returns:
The size allocated for this object.

Definition at line 217 of file Object.cpp.

  {
    return _size_of_this_object;
  }
int nux::IOpenGLResource::GetOpenGLID ( ) const [inline, inherited]

Definition at line 101 of file IOpenGLResource.h.

    {
      return _OpenGLID;
    }

Here is the caller graph for this function:

template<typename T >
T nux::Introspectable::GetProperty ( std::string const &  name,
T *  foo = 0 
) [inherited]

Definition at line 285 of file Property-inl.h.

{
  PropertyContainer::iterator i = properties_.find(name);
  if (i == properties_.end())
    return T();

  std::string s = i->second->GetSerializedValue();
  std::pair<T, bool> result = type::PropertyTrait<T>::from_string(s);
  // If this is called with a template type that the property does not
  // support nice conversion to, you'll get no error, but will get
  // a default constructed T.  We could use an exception here.
  return result.first;
}
int nux::Object::GetReferenceCount ( ) const [inherited]

Get the reference count of this object.

Returns:
The reference count of this object.

Definition at line 343 of file Object.cpp.

  {
    return reference_count_->GetValue();
  }

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 96 of file IOpenGLResource.h.

    {
      return _ResourceType;
    }

Here is the caller graph for this function:

bool nux::Trackable::IsDynamic ( ) const [inherited]

Test if object was allocated dynamically.

Definition at line 201 of file Object.cpp.

  {
    // Get pointer to beginning of the memory occupied by this.
    const void *ptr = dynamic_cast<const void *> (this);

    // Search for ptr in allocation_list
#if defined(NUX_OS_WINDOWS) && !defined(NUX_VISUAL_STUDIO_2010)
    std::list<void*>::iterator i = std::find(GObjectStats._allocation_list.begin(),
      GObjectStats._allocation_list.end(), ptr);
#else
    auto i = std::find(GObjectStats._allocation_list.begin(),
                       GObjectStats._allocation_list.end(), ptr);
#endif
    return i != GObjectStats._allocation_list.end();
  }

Here is the caller graph for this function:

bool nux::Trackable::IsHeapAllocated ( ) [inherited]

Test if object was allocated dynamically.

Definition at line 191 of file Object.cpp.

  {
    if (_heap_allocated == -1)
    {
      _heap_allocated = (IsDynamic () ? 1 : 0);
    }

    return (_heap_allocated == 1 ? true : false);
  }

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 249 of file IOpenGLAsmShader.cpp.

  {
    if (m_AsmVertexProgram->IsValid() && m_AsmFragmentProgram->IsValid())
      return true;

    return false;
  }

Here is the call graph for this function:

Definition at line 243 of file IOpenGLAsmShader.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void nux::IOpenGLAsmShaderProgram::LoadIShader ( const char *  ShaderCode)

Definition at line 211 of file IOpenGLAsmShader.cpp.

  {
    nuxAssertMsg(ShaderCode, "[IOpenGLAsmShaderProgram::LoadIShader] Invalid shader code.");
    NUX_RETURN_IF_NULL(ShaderCode);
    NString VertexShaderSource;
    ExtractShaderString3("[Vertex Shader]", ShaderCode, VertexShaderSource, NString(""));
    NString PixelShaderSource;
    ExtractShaderString3("[Fragment Shader]", ShaderCode, PixelShaderSource, NString(""));

    m_AsmVertexProgram->SetShaderCode(&VertexShaderSource[0]);
    m_AsmFragmentProgram->SetShaderCode(&PixelShaderSource[0]);

    m_AsmVertexProgram->Compile();
    m_AsmFragmentProgram->Compile();
  }

Here is the call graph for this function:

Here is the caller graph for this function:

void nux::IOpenGLAsmShaderProgram::LoadIShaderFile ( const char *  ShaderFileName)

Definition at line 202 of file IOpenGLAsmShader.cpp.

  {
    nuxAssertMsg(ShaderFileName, "[IOpenGLAsmShaderProgram::LoadIShaderFile] Invalid shader file name.");
    NUX_RETURN_IF_NULL(ShaderFileName);
    NString SourceCode;
    LoadFileToString(SourceCode, ShaderFileName);
    LoadIShader(&SourceCode[0]);
  }

Here is the call graph for this function:

void nux::IOpenGLAsmShaderProgram::LoadPixelShader ( const char *  glslshader)

Definition at line 235 of file IOpenGLAsmShader.cpp.

  {
    nuxAssertMsg(glslshader, "[IOpenGLAsmShaderProgram::LoadPixelShader] Invalid shader code.");
    NUX_RETURN_IF_NULL(glslshader);
    m_AsmFragmentProgram->SetShaderCode(glslshader);
    m_AsmFragmentProgram->Compile();
  }

Here is the call graph for this function:

Here is the caller graph for this function:

void nux::IOpenGLAsmShaderProgram::LoadVertexShader ( const char *  glslshader)

Definition at line 227 of file IOpenGLAsmShader.cpp.

  {
    nuxAssertMsg(glslshader, "[IOpenGLAsmShaderProgram::LoadVertexShader] Invalid shader code.");
    NUX_RETURN_IF_NULL(glslshader);
    m_AsmVertexProgram->SetShaderCode(glslshader);
    m_AsmVertexProgram->Compile();
  }

Here is the call graph for this function:

Here is the caller graph for this function:

nux::Object::NUX_DECLARE_OBJECT_TYPE ( BaseObject  ,
Trackable   
) [inherited]
void nux::Trackable::operator delete ( void *  ptr) [static, inherited]

Definition at line 178 of file Object.cpp.

  {
    ObjectStats::AllocationList::iterator i = std::find (GObjectStats._allocation_list.begin(), GObjectStats._allocation_list.end(), ptr);

    if (i != GObjectStats._allocation_list.end() )
    {
      GObjectStats._total_allocated_size -= NUX_STATIC_CAST (Trackable *, ptr)->_size_of_this_object;
      --GObjectStats._number_of_objects;
      GObjectStats._allocation_list.erase (i);
      ::operator delete (ptr);
    }
  }
void * nux::Trackable::operator new ( size_t  size) [static, inherited]

Definition at line 140 of file Object.cpp.

  {
    // Set the new_handler for this call
    std::new_handler global_handler  = std::set_new_handler (_new_current_handler);

    // If allocation fails _new_current_handler is called, if specified,
    // otherwise the global new_handler is called.
    void *ptr;

    try
    {
      ptr = ::operator new (size);

      GObjectStats._allocation_list.push_front (ptr);
      NUX_STATIC_CAST (Trackable *, ptr)->_size_of_this_object = size;
      GObjectStats._total_allocated_size += size;
      ++GObjectStats._number_of_objects;
    }
    catch (std::bad_alloc &)
    {
      std::set_new_handler (global_handler);
      throw;
    }

    //  Reset gloabal new_handler
    std::set_new_handler (global_handler);
    return ptr;
  }

Here is the call graph for this function:

Here is the caller graph for this function:

void * nux::Trackable::operator new ( size_t  size,
void *  ptr 
) [static, inherited]

Definition at line 171 of file Object.cpp.

  {
    return ::operator new (size, ptr);
  }

Here is the call graph for this function:

bool nux::Trackable::OwnsTheReference ( ) [inherited]

Test if object reference is owned.

Definition at line 117 of file Object.cpp.

  {
    return _owns_the_reference;
  }

Here is the caller graph for this function:

virtual int nux::IOpenGLResource::RefCount ( ) const [inline, virtual, inherited]

Reimplemented in nux::IOpenGLVolume, and nux::IOpenGLSurface.

Definition at line 91 of file IOpenGLResource.h.

    {
      return GetReferenceCount();
    }

Here is the call graph for this function:

Here is the caller graph for this function:

bool nux::Object::Reference ( ) [virtual, inherited]

Increase reference count.

Returns:
True if the object has successfully referenced.

Reimplemented from nux::Trackable.

Definition at line 254 of file Object.cpp.

  {
    if (!IsHeapAllocated())
    {
      LOG_WARN(logger) << "Trying to reference an object that was not heap allocated."
                       << "\nObject allocated at: " << GetAllocationLoation() << "\n";
      return false;
    }

    if (!OwnsTheReference())
    {
      SetOwnedReference(true);
      // The ref count remains at 1. Exit the method.
      return true;
    }

    reference_count_->Increment();
    return true;
  }

Here is the call graph for this function:

Here is the caller graph for this function:

std::new_handler nux::Trackable::set_new_handler ( std::new_handler  handler) [static, inherited]

Definition at line 133 of file Object.cpp.

  {
    std::new_handler old_handler = _new_current_handler;
    _new_current_handler = handler;
    return old_handler;
  }

Here is the caller graph for this function:

void nux::IOpenGLAsmShaderProgram::SetFragmentEnvParameter4dARB ( unsigned int  index,
double  x,
double  y,
double  z,
double  w 
)

Definition at line 318 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4dARB(GL_FRAGMENT_PROGRAM_ARB, index, x, y, z, w));
  }
void nux::IOpenGLAsmShaderProgram::SetFragmentEnvParameter4dvARB ( unsigned int  index,
const double *  params 
)

Definition at line 323 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4dvARB(GL_FRAGMENT_PROGRAM_ARB, index, params));
  }
void nux::IOpenGLAsmShaderProgram::SetFragmentEnvParameter4fARB ( unsigned int  index,
float  x,
float  y,
float  z,
float  w 
)

Definition at line 328 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4fARB(GL_FRAGMENT_PROGRAM_ARB, index, x, y, z, w));
  }
void nux::IOpenGLAsmShaderProgram::SetFragmentEnvParameter4fvARB ( unsigned int  index,
const float *  params 
)

Definition at line 333 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4fvARB(GL_FRAGMENT_PROGRAM_ARB, index, params));
  }
void nux::IOpenGLAsmShaderProgram::SetFragmentLocalParameter4dARB ( unsigned int  index,
double  x,
double  y,
double  z,
double  w 
)

Definition at line 338 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4dARB(GL_FRAGMENT_PROGRAM_ARB, index, x, y, z, w));
  }
void nux::IOpenGLAsmShaderProgram::SetFragmentLocalParameter4dvARB ( unsigned int  index,
const double *  params 
)

Definition at line 343 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4dvARB(GL_FRAGMENT_PROGRAM_ARB, index, params));
  }
void nux::IOpenGLAsmShaderProgram::SetFragmentLocalParameter4fARB ( unsigned int  index,
float  x,
float  y,
float  z,
float  w 
)

Definition at line 348 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4fARB(GL_FRAGMENT_PROGRAM_ARB, index, x, y, z, w));
  }
void nux::IOpenGLAsmShaderProgram::SetFragmentLocalParameter4fvARB ( unsigned int  index,
const float *  params 
)

Definition at line 353 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4fvARB(GL_FRAGMENT_PROGRAM_ARB, index, params));
  }
void nux::Trackable::SetOwnedReference ( bool  b) [protected, inherited]

Definition at line 122 of file Object.cpp.

  {
    if (_owns_the_reference == true)
    {
      LOG_DEBUG(logger) << "Do not change the ownership if is already set to true!" << "\n";
      return;
    }

    _owns_the_reference = b;
  }

Here is the caller graph for this function:

bool nux::Introspectable::SetProperty ( std::string const &  name,
const char *  value 
) [inline, inherited]

If the property was not able to be set with the value, the method returns false.

Definition at line 262 of file Property-inl.h.

{
  PropertyContainer::iterator i = properties_.find(name);
  if (i == properties_.end())
    return false;
  else
    return i->second->SetValue(value);
}
template<typename T >
bool nux::Introspectable::SetProperty ( std::string const &  name,
T const &  value 
) [inherited]

Definition at line 273 of file Property-inl.h.

{
  PropertyContainer::iterator i = properties_.find(name);
  if (i == properties_.end())
    return false;
  else
  {
    return i->second->SetValue(type::PropertyTrait<T>::to_string(value));
  }
}
void nux::IOpenGLAsmShaderProgram::SetVertexEnvParameter4dARB ( unsigned int  index,
double  x,
double  y,
double  z,
double  w 
)

Definition at line 278 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4dARB(GL_VERTEX_PROGRAM_ARB, index, x, y, z, w));
  }
void nux::IOpenGLAsmShaderProgram::SetVertexEnvParameter4dvARB ( unsigned int  index,
const double *  params 
)

Definition at line 283 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4dvARB(GL_VERTEX_PROGRAM_ARB, index, params));
  }
void nux::IOpenGLAsmShaderProgram::SetVertexEnvParameter4fARB ( unsigned int  index,
float  x,
float  y,
float  z,
float  w 
)

Definition at line 288 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4fARB(GL_VERTEX_PROGRAM_ARB, index, x, y, z, w));
  }
void nux::IOpenGLAsmShaderProgram::SetVertexEnvParameter4fvARB ( unsigned int  index,
const float *  params 
)

Definition at line 293 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4fvARB(GL_VERTEX_PROGRAM_ARB, index, params));
  }
void nux::IOpenGLAsmShaderProgram::SetVertexLocalParameter4dARB ( unsigned int  index,
double  x,
double  y,
double  z,
double  w 
)

Definition at line 298 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4dARB(GL_VERTEX_PROGRAM_ARB, index, x, y, z, w));
  }
void nux::IOpenGLAsmShaderProgram::SetVertexLocalParameter4dvARB ( unsigned int  index,
const double *  params 
)

Definition at line 303 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4dvARB(GL_VERTEX_PROGRAM_ARB, index, params));
  }
void nux::IOpenGLAsmShaderProgram::SetVertexLocalParameter4fARB ( unsigned int  index,
float  x,
float  y,
float  z,
float  w 
)

Definition at line 308 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4fARB(GL_VERTEX_PROGRAM_ARB, index, x, y, z, w));
  }
void nux::IOpenGLAsmShaderProgram::SetVertexLocalParameter4fvARB ( unsigned int  index,
const float *  params 
)

Definition at line 313 of file IOpenGLAsmShader.cpp.

  {
    CHECKGL(glProgramEnvParameter4fvARB(GL_VERTEX_PROGRAM_ARB, index, params));
  }
bool nux::Object::SinkReference ( ) [virtual, inherited]

Mark the object as owned.

If this object is not owned, calling SinkReference() as the same effect as calling Reference().

Returns:
True if the object was not owned previously

Reimplemented from nux::Trackable.

Definition at line 306 of file Object.cpp.

  {
    return Reference();
  }

Here is the call graph for this function:

Here is the caller graph for this function:

bool nux::Object::UnReference ( ) [virtual, inherited]

Decrease reference count.

Returns:
True if the object reference count has reached 0 and the object has been destroyed.

Reimplemented from nux::Trackable.

Definition at line 274 of file Object.cpp.

  {
    if (!IsHeapAllocated())
    {
      LOG_WARN(logger) << "Trying to un-reference an object that was not heap allocated."
                       << "\nObject allocated at: " << GetAllocationLoation() << "\n";
      return false;
    }

    if (objectptr_count_->GetValue() == reference_count_->GetValue())
    {
      // There are ObjectPtr's hosting this object. Release all of them to
      // destroy this object.  This prevent from calling UnReference () many
      // times and destroying the object when there are ObjectPtr's hosting
      // it.  This method should not be called directly in that case.
      LOG_WARN(logger) << "There are ObjectPtr hosting this object. "
                       << "Release all of them to destroy this object. "
                       << "\nObject allocated at: " << GetAllocationLoation() << "\n";
      return false;
    }

    reference_count_->Decrement();

    if (reference_count_->GetValue() == 0)
    {
      Destroy();
      return true;
    }

    return false;
  }

Here is the call graph for this function:


Friends And Related Function Documentation

friend class GpuDevice [friend]

Reimplemented from nux::IOpenGLResource.

Definition at line 137 of file IOpenGLAsmShader.h.


Member Data Documentation

int nux::Trackable::_heap_allocated [protected, inherited]

Definition at line 158 of file Object.h.

Definition at line 132 of file IOpenGLAsmShader.h.

Definition at line 135 of file IOpenGLAsmShader.h.

Definition at line 134 of file IOpenGLAsmShader.h.

sigc::signal<void, Object *> nux::Object::object_destroyed [inherited]

Signal emitted immediately before the object is destroyed.

Definition at line 214 of file Object.h.

Definition at line 131 of file IOpenGLAsmShader.h.


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