Panda3D
Public Member Functions | Static Public Member Functions | Protected Member Functions
FltTransformPut Class Reference

A "put", which is a MultiGen concept of defining a transformation by mapping three arbitrary points to three new arbitrary points. More...

#include "fltTransformPut.h"

Inheritance diagram for FltTransformPut:
FltTransformRecord FltRecord TypedReferenceCount TypedObject ReferenceCount MemoryBase MemoryBase

List of all members.

Public Member Functions

 FltTransformPut (FltHeader *header)
virtual TypeHandle force_init_type ()
const LPoint3dget_from_align () const
const LPoint3dget_from_origin () const
const LPoint3dget_from_track () const
const LPoint3dget_to_align () const
const LPoint3dget_to_origin () const
const LPoint3dget_to_track () const
virtual TypeHandle get_type () const
void set (const LPoint3d &from_origin, const LPoint3d &from_align, const LPoint3d &from_track, const LPoint3d &to_origin, const LPoint3d &to_align, const LPoint3d &to_track)
 Defines the put explicitly.

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.

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 record based on the information given in the indicated datagram, whose opcode has already been read.

Detailed Description

A "put", which is a MultiGen concept of defining a transformation by mapping three arbitrary points to three new arbitrary points.

Definition at line 28 of file fltTransformPut.h.


Member Function Documentation

bool FltTransformPut::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 FltRecord.

Definition at line 191 of file fltTransformPut.cxx.

References Datagram::add_be_float64(), FltRecord::build_record(), Datagram::pad_bytes(), FltRecordWriter::set_opcode(), and FltRecordWriter::update_datagram().

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

Fills in the information in this record 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 FltRecord.

Definition at line 147 of file fltTransformPut.cxx.

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

static void FltTransformPut::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 FltTransformRecord.

Definition at line 68 of file fltTransformPut.h.

void FltTransformPut::set ( const LPoint3d from_origin,
const LPoint3d from_align,
const LPoint3d from_track,
const LPoint3d to_origin,
const LPoint3d to_align,
const LPoint3d to_track 
)

Defines the put explicitly.

The transformation will map the three "from" points to the corresponding three "to" points.

Definition at line 46 of file fltTransformPut.cxx.


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