18 #include "pandabase.h"
21 #include "pandaNode.h"
43 virtual void output(ostream &out)
const;
44 virtual void write(ostream &out,
int indent_level = 0)
const;
56 static void init_type() {
58 PandaNode::init_type();
59 register_type(_type_handle,
"LightNode",
60 Light::get_class_type(),
61 PandaNode::get_class_type());
64 return get_class_type();
66 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
72 INLINE ostream &operator << (ostream &out,
const LightNode &light) {
77 #include "lightNode.I"
virtual Light * as_light()
Cross-casts the node to a Light pointer, if it is one of the four kinds of Light nodes, or returns NULL if it is not.
A basic node of the scene graph or data graph.
The abstract interface to all kinds of lights.
virtual void write_datagram(BamWriter *manager, Datagram &dg)
Writes the contents of this object to the datagram for shipping out to a Bam file.
This is the fundamental interface for extracting binary objects from a Bam file, as generated by a Ba...
A derivative of Light and of PandaNode.
This is the fundamental interface for writing binary objects to a Bam file, to be extracted later by ...
A class to retrieve the individual data elements previously stored in a Datagram. ...
TypeHandle is the identifier used to differentiate C++ class types.
An ordered list of data elements, formatted in memory for transmission over a socket or writing to a ...