Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

PointLight Class Reference

#include <pointLight.h>

Inheritance diagram for PointLight:

LightNode Light PandaNode ReferenceCount TypedWritable Namable BoundedObject ReferenceCount TypedObject List of all members.

Public Member Functions

virtual PandaNode * make_copy () const
virtual void xform (const LMatrix4f &mat)
virtual void write (ostream &out, int indent_level) const
INLINE void set_specular_color (const Colorf &color)
INLINE const LVecBase3f & get_attenuation () const
INLINE void set_attenuation (const LVecBase3f &attenuation)
INLINE const LPoint3f & get_point () const
INLINE void set_point (const LPoint3f &point)
virtual void bind (GraphicsStateGuardianBase *gsg, int light_id)
virtual void write_datagram (BamWriter *manager, Datagram &dg)
virtual TypeHandle get_type () const
virtual TypeHandle force_init_type ()

Static Public Member Functions

void register_with_read_factory ()
TypeHandle get_class_type ()
void init_type ()

Public Attributes

PUBLISHED __pad1__: INLINE const Colorf &get_specular_color() const

Protected Member Functions

 PointLight (const PointLight &copy)
void fillin (DatagramIterator &scan, BamReader *manager)

Static Protected Member Functions

TypedWritable * make_from_bam (const FactoryParams &params)

Private Types

typedef CycleDataReader< CData > CDReader
typedef CycleDataWriter< CData > CDWriter

Private Attributes

PUBLISHED __pad0__: PointLight(const string &name)
PipelineCycler< CData > _cycler

Static Private Attributes

TypeHandle _type_handle

Member Typedef Documentation

typedef CycleDataReader<CData> PointLight::CDReader [private]
 

Reimplemented from Light.

Definition at line 72 of file pointLight.h.

typedef CycleDataWriter<CData> PointLight::CDWriter [private]
 

Reimplemented from Light.

Definition at line 73 of file pointLight.h.


Constructor & Destructor Documentation

PointLight::PointLight (  const PointLight &  copy  )  [protected]
 

Definition at line 84 of file pointLight.cxx.

References _cycler.

Referenced by make_copy(), and make_from_bam().


Member Function Documentation

void PointLight::bind (  GraphicsStateGuardianBase *  gsg,
int  light_id
)  [virtual]
 

Implements Light.

Definition at line 141 of file pointLight.cxx.

References GraphicsStateGuardianBase::bind_light().

void PointLight::fillin (  DatagramIterator &  scan,
BamReader *  manager
)  [protected]
 

Reimplemented from LightNode.

Definition at line 196 of file pointLight.cxx.

References _cycler, LightNode::fillin(), and BamReader::read_cdata().

Referenced by make_from_bam().

virtual TypeHandle PointLight::force_init_type (  void   )  [inline, virtual]
 

Reimplemented from LightNode.

Definition at line 95 of file pointLight.h.

INLINE const LVecBase3f& PointLight::get_attenuation (   )  const
 

Referenced by GLGraphicsStateGuardian::bind_light(), DXGraphicsStateGuardian8::bind_light(), CRGraphicsStateGuardian::bind_light(), DXGraphicsStateGuardian7::prepare_texture(), and write().

TypeHandle PointLight::get_class_type (  void   )  [inline, static]
 

Reimplemented from LightNode.

Definition at line 84 of file pointLight.h.

Referenced by RIBGraphicsStateGuardian::define_light(), and register_with_read_factory().

INLINE const LPoint3f& PointLight::get_point (   )  const
 

Referenced by GLGraphicsStateGuardian::bind_light(), DXGraphicsStateGuardian8::bind_light(), CRGraphicsStateGuardian::bind_light(), and DXGraphicsStateGuardian7::prepare_texture().

virtual TypeHandle PointLight::get_type (  void   )  const [inline, virtual]
 

Reimplemented from LightNode.

Definition at line 92 of file pointLight.h.

void PointLight::init_type (  void   )  [inline, static]
 

Reimplemented from LightNode.

Definition at line 87 of file pointLight.h.

References LightNode::get_class_type(), LightNode::init_type(), and register_type().

Referenced by init_libpgraph().

PandaNode * PointLight::make_copy (   )  const [virtual]
 

Reimplemented from PandaNode.

Definition at line 100 of file pointLight.cxx.

References PointLight().

TypedWritable * PointLight::make_from_bam (  const FactoryParams &  params  )  [static, protected]
 

Reimplemented from PandaNode.

Definition at line 177 of file pointLight.cxx.

References fillin(), params, parse_params(), and PointLight().

Referenced by register_with_read_factory().

void PointLight::register_with_read_factory (   )  [static]
 

Reimplemented from PandaNode.

Definition at line 152 of file pointLight.cxx.

References get_class_type(), BamReader::get_factory(), make_from_bam(), and Factory< TypedWritable >::register_factory().

Referenced by init_libpgraph().

INLINE void PointLight::set_attenuation (  const LVecBase3f &  attenuation  ) 
 

INLINE void PointLight::set_point (  const LPoint3f &  point  ) 
 

INLINE void PointLight::set_specular_color (  const Colorf &  color  ) 
 

void PointLight::write (  ostream &  out,
int  indent_level
)  const [virtual]
 

Reimplemented from LightNode.

Definition at line 125 of file pointLight.cxx.

References get_attenuation(), Light::get_color(), and indent().

void PointLight::write_datagram (  BamWriter *  manager,
Datagram &  dg
)  [virtual]
 

Reimplemented from LightNode.

Definition at line 163 of file pointLight.cxx.

References _cycler, BamWriter::write_cdata(), and LightNode::write_datagram().

void PointLight::xform (  const LMatrix4f &  mat  )  [virtual]
 

Reimplemented from PandaNode.

Definition at line 112 of file pointLight.cxx.

References _cycler, Light::mark_viz_stale(), and PandaNode::xform().


Member Data Documentation

PUBLISHED PointLight::__pad0__ [private]
 

Reimplemented from LightNode.

Definition at line 33 of file pointLight.h.

PUBLISHED PointLight::__pad1__
 

Reimplemented from LightNode.

Definition at line 44 of file pointLight.h.

PipelineCycler<CData> PointLight::_cycler [private]
 

Reimplemented from Light.

Definition at line 71 of file pointLight.h.

Referenced by fillin(), PointLight(), write_datagram(), and xform().

TypeHandle PointLight::_type_handle [static, private]
 

Reimplemented from LightNode.

Definition at line 26 of file pointLight.cxx.


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 00:13:18 2003 for Panda by doxygen1.3