Panda3D
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions

FltLOD Class Reference

A Level-of-Detail record. More...

#include "fltLOD.h"

Inheritance diagram for FltLOD:
FltBeadID FltBead FltRecord TypedReferenceCount TypedObject ReferenceCount MemoryBase MemoryBase

List of all members.

Public Types

enum  Flags { F_use_previous_slant = 0x80000000, F_freeze_center = 0x20000000 }

Public Member Functions

 FltLOD (FltHeader *header)
virtual TypeHandle force_init_type ()
virtual TypeHandle get_type () const

Static Public Member Functions

static TypeHandle get_class_type ()
static void init_type ()
 This function is declared non-inline to work around a compiler bug in g++ 2.96.

Public Attributes

double _center_x
double _center_y
double _center_z
unsigned int _flags
int _special_id1
int _special_id2
double _switch_in
double _switch_out
double _transition_range

Protected Member Functions

virtual bool build_record (FltRecordWriter &writer) const
 Fills up the current record on the FltRecordWriter with data for this record, but does not advance the writer.
virtual bool extract_record (FltRecordReader &reader)
 Fills in the information in this bead based on the information given in the indicated datagram, whose opcode has already been read.

Detailed Description

A Level-of-Detail record.

Definition at line 26 of file fltLOD.h.


Member Function Documentation

bool FltLOD::build_record ( FltRecordWriter writer) const [protected, virtual]

Fills up the current record on the FltRecordWriter with data for this record, but does not advance the writer.

Returns true on success, false if there is some error.

Reimplemented from FltBeadID.

Definition at line 80 of file fltLOD.cxx.

References Datagram::add_be_float64(), Datagram::add_be_int16(), Datagram::add_be_uint32(), FltBeadID::build_record(), Datagram::pad_bytes(), FltRecordWriter::set_opcode(), and FltRecordWriter::update_datagram().

bool FltLOD::extract_record ( FltRecordReader reader) [protected, virtual]

Fills in the information in this bead based on the information given in the indicated datagram, whose opcode has already been read.

Returns true on success, false if the datagram is invalid.

Reimplemented from FltBeadID.

Definition at line 48 of file fltLOD.cxx.

References FltRecord::check_remaining_size(), FltBeadID::extract_record(), FltRecordReader::get_iterator(), FltRecordReader::get_opcode(), and DatagramIterator::skip_bytes().

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

This function is declared non-inline to work around a compiler bug in g++ 2.96.

Making it inline seems to cause problems in the optimizer.

Reimplemented from FltBeadID.

Definition at line 56 of file fltLOD.h.


The documentation for this class was generated from the following files:
 All Classes Functions Variables Enumerations