#include <lv3d0.h>
Public Member Functions | |
LV3D_Universe () | |
LV3D_Universe (CkMigrateMessage *m) | |
virtual | ~LV3D_Universe () |
virtual void | pup (PUP::er &p) |
Pup routine is called on both client (for unpacking) and server (for packing, and for checkpointing). | |
PUPable_decl (LV3D_Universe) | |
All subclasses must be PUP::able, so they can be sent to the client properly. | |
virtual void | setupClient (oglOptions &i) |
Set up this client. | |
virtual void | setupGL (void) |
Post-OpenGL initialization. | |
virtual oglController * | makeController (void) |
Return the client GUI controller. | |
virtual void | viewResponse (CkView *v) |
Add this view to the universe. | |
virtual void | render (const CkViewpoint &vp) |
Draw the world to this camera using OpenGL calls. | |
Protected Member Functions | |
CkView * | lookup (const CkViewableID &src) |
Return the last known view for this viewableID. | |
Private Attributes | |
LV3D_Universe_Table * | object_table |
Stores cached CkView's on the client side. |
It performs all necessary drawing every frame. This class is sent from the server to the client in response to a "setup" message.
Definition at line 31 of file lv3d0.h.
LV3D_Universe::LV3D_Universe | ( | CkMigrateMessage * | m | ) | [inline] |
LV3D_Universe::~LV3D_Universe | ( | ) | [virtual] |
void LV3D_Universe::pup | ( | PUP::er & | p | ) | [virtual] |
Pup routine is called on both client (for unpacking) and server (for packing, and for checkpointing).
Reimplemented from PUP::able.
Definition at line 43 of file lv3d0.C.
References object_table, and PUP::able::pup().
LV3D_Universe::PUPable_decl | ( | LV3D_Universe | ) |
void LV3D_Universe::setupClient | ( | oglOptions & | i | ) | [virtual] |
void LV3D_Universe::setupGL | ( | void | ) | [virtual] |
oglController * LV3D_Universe::makeController | ( | void | ) | [virtual] |
void LV3D_Universe::viewResponse | ( | CkView * | v | ) | [virtual] |
Add this view to the universe.
This is called once per incoming network view on the client. This call transfers ownership of the view. The default implementation stores the view in the table below.
This is called once per incoming network view on the client. This call transfers ownership of the view.
Definition at line 74 of file lv3d0.C.
References LV3D_Universe_Table::add(), and object_table.
void LV3D_Universe::render | ( | const CkViewpoint & | vp | ) | [virtual] |
Draw the world to this camera using OpenGL calls.
This routine is called once per frame on the client. The default implementation just draws all known views.
This routine is called once per frame on the client.
Definition at line 94 of file lv3d0.C.
References object_table, and LV3D_Universe_Table::render().
CkView * LV3D_Universe::lookup | ( | const CkViewableID & | src | ) | [protected] |
Return the last known view for this viewableID.
Returns NULL if no view is available.
Definition at line 83 of file lv3d0.C.
References LV3D_Universe_Table::lookup(), and object_table.
LV3D_Universe_Table* LV3D_Universe::object_table [private] |
Stores cached CkView's on the client side.
Definition at line 92 of file lv3d0.h.
Referenced by lookup(), pup(), render(), viewResponse(), and ~LV3D_Universe().