14 #ifndef CULLFACEATTRIB_H 15 #define CULLFACEATTRIB_H 31 M_cull_counter_clockwise,
39 static CPT(
RenderAttrib) make(Mode mode = M_cull_clockwise);
43 INLINE Mode get_actual_mode()
const;
44 INLINE
bool get_reverse()
const;
45 Mode get_effective_mode()
const;
48 MAKE_PROPERTY(mode, get_actual_mode);
49 MAKE_PROPERTY(reverse, get_reverse);
50 MAKE_PROPERTY(effective_mode, get_effective_mode);
53 virtual void output(std::ostream &out)
const;
56 virtual int compare_to_impl(
const RenderAttrib *other)
const;
57 virtual size_t get_hash_impl()
const;
66 static int get_class_slot() {
69 virtual int get_slot()
const {
70 return get_class_slot();
72 MAKE_PROPERTY(class_slot, get_class_slot);
75 static void register_with_read_factory();
86 static void init_type() {
87 RenderAttrib::init_type();
89 RenderAttrib::get_class_type());
94 return get_class_type();
96 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
100 static int _attrib_slot;
This is the base class for a number of render attributes (other than transform) that may be set on sc...
This is the fundamental interface for extracting binary objects from a Bam file, as generated by a Ba...
Base class for objects that can be written to and read from Bam files.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This is the fundamental interface for writing binary objects to a Bam file, to be extracted later by ...
Indicates which faces should be culled based on their vertex ordering.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
virtual void write_datagram(BamWriter *manager, Datagram &dg)
Writes the contents of this object to the datagram for shipping out to a Bam file.
static int register_slot(TypeHandle type_handle, int sort, RenderAttrib *default_attrib)
Adds the indicated TypeHandle to the registry, if it is not there already, and returns a unique slot ...
An instance of this class is passed to the Factory when requesting it to do its business and construc...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
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 ...