Panda3D
fltTransformRecord.h
1 // Filename: fltTransformRecord.h
2 // Created by: drose (24Aug00)
3 //
4 ////////////////////////////////////////////////////////////////////
5 //
6 // PANDA 3D SOFTWARE
7 // Copyright (c) Carnegie Mellon University. All rights reserved.
8 //
9 // All use of this software is subject to the terms of the revised BSD
10 // license. You should have received a copy of this license along
11 // with this source code in a file named "LICENSE."
12 //
13 ////////////////////////////////////////////////////////////////////
14 
15 #ifndef FLTTRANSFORMRECORD_H
16 #define FLTTRANSFORMRECORD_H
17 
18 #include "pandatoolbase.h"
19 
20 #include "fltRecord.h"
21 
22 #include "luse.h"
23 
24 ////////////////////////////////////////////////////////////////////
25 // Class : FltTransformRecord
26 // Description : A base class for a number of types of ancillary
27 // records that follow beads and indicate some kind of a
28 // transformation. Pointers of this type are collected
29 // in the FltTransformation class.
30 ////////////////////////////////////////////////////////////////////
31 class FltTransformRecord : public FltRecord {
32 public:
34 
35  const LMatrix4d &get_matrix() const;
36 
37 protected:
38  LMatrix4d _matrix;
39 
40 public:
41  virtual TypeHandle get_type() const {
42  return get_class_type();
43  }
44  virtual TypeHandle force_init_type() {init_type(); return get_class_type();}
45  static TypeHandle get_class_type() {
46  return _type_handle;
47  }
48  static void init_type() {
49  FltRecord::init_type();
50  register_type(_type_handle, "FltTransformRecord",
51  FltRecord::get_class_type());
52  }
53 
54 private:
55  static TypeHandle _type_handle;
56 
57  friend class FltBead;
58 };
59 
60 #endif
61 
62 
This is a 4-by-4 transform matrix.
Definition: lmatrix.h:4716
const LMatrix4d & get_matrix() const
Returns the transform matrix represented by this particular component of the transform.
A base class for any of a broad family of flt records that represent particular beads in the hierarch...
Definition: fltBead.h:33
This is the first bead in the file, the top of the bead hierarchy, and the primary interface to readi...
Definition: fltHeader.h:48
The base class for all kinds of records in a MultiGen OpenFlight file.
Definition: fltRecord.h:40
A base class for a number of types of ancillary records that follow beads and indicate some kind of a...
TypeHandle is the identifier used to differentiate C++ class types.
Definition: typeHandle.h:85