Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

VMDDisplayList Class Reference

Display list data structure used to hold all of the rendering commands VMD generates and interprets in order to do its 3-D rendering. More...

#include <VMDDisplayList.h>

List of all members.

Public Methods

 VMDDisplayList ()
 constructor. More...

 ~VMDDisplayList ()
 destructor. More...

void * operator new (size_t)
 potentially shared mem allocation. More...

void operator delete (void *, size_t)
 potentially shared mem allocation. More...

void * append (int code, long size)
 Append a new item. Return space for the requested number of bytes. More...

void reset_and_free (unsigned long newserial)
const VMDClipPlaneclipplane (int i)
 return clip plane info for read-only access. More...

void first (VMDLinkIter *it) const
 get head of the list. More...

int next (VMDLinkIter *it, char *&d) const
 get next item in the list. More...

int set_clip_center (int i, const float *)
 Set/get clip plane properties. Return true on success, false if failed. More...

int set_clip_normal (int i, const float *)
 Set/get clip plane properties. Return true on success, false if failed. More...

int set_clip_color (int i, const float *)
 Set/get clip plane properties. Return true on success, false if failed. More...

int set_clip_status (int i, int)
 Set/get clip plane properties. Return true on success, false if failed. More...

int get_clip_status (int i, int &)
 Set/get clip plane properties. Return true on success, false if failed. More...


Public Attributes

Matrix4 mat
 transform matrix for this display list. More...

unsigned long serial
 globally unique serial# for cur contents. More...

int cacheskip
 display list cache skip flag. More...

int pbc
 periodic boundary condition flags. More...

int npbc
 number of times to replicate the image. More...

Matrix4 transX
Matrix4 transY
Matrix4 transZ
 how to create periodic images. More...

Matrix4 transXinv
Matrix4 transYinv
Matrix4 transZinv
 the inverse transforms. More...

int instanceset
 molecule instance flags. More...

ResizeArray< Matrix4instances
 molecule instance list. More...

VMDClipPlane clipplanes [VMD_MAX_CLIP_PLANE]
 user clip planes. More...

float ambient
 Material properties for this display list. More...

float specular
 Material properties for this display list. More...

float diffuse
 Material properties for this display list. More...

float shininess
 Material properties for this display list. More...

float mirror
 Material properties for this display list. More...

float opacity
 Material properties for this display list. More...

float outline
 Material properties for this display list. More...

float outlinewidth
 Material properties for this display list. More...

float transmode
 Material properties for this display list. More...

int materialtag
 used to avoid unnecessary material changes. More...


Detailed Description

Display list data structure used to hold all of the rendering commands VMD generates and interprets in order to do its 3-D rendering.

Definition at line 66 of file VMDDisplayList.h.


Constructor & Destructor Documentation

VMDDisplayList::VMDDisplayList  
 

constructor.

Definition at line 53 of file VMDDisplayList.C.

References cacheskip, ResizeArray< Matrix4 >::clear, INSTANCE_ALL, instances, instanceset, materialtag, npbc, NULL, pbc, PBC_NONE, and serial.

VMDDisplayList::~VMDDisplayList  
 

destructor.

Definition at line 77 of file VMDDisplayList.C.

References vmd_dealloc.


Member Function Documentation

void * VMDDisplayList::append int    code,
long    size
 

Append a new item. Return space for the requested number of bytes.

Definition at line 81 of file VMDDisplayList.C.

References ALLOC_ALIGNMASK, BASE_DISPLAYLIST_SIZE, GROWN_DISPLAYLIST_SIZE, NULL, size, and vmd_resize_alloc.

Referenced by Displayable::append, DispCmdPickPointArray::putdata, DispCmdLineWidth::putdata, DispCmdLineType::putdata, DispCmdSphereType::putdata, DispCmdSphereRes::putdata, DispCmdVolumeTexture::putdata, DispCmdVolSlice::putdata, DispCmdText::putdata, DispCmdColorIndex::putdata, DispCmdCone::putdata, DispCmdCylinder::putdata, DispCmdWireMesh::putdata, DispCmdTriStrips::putdata, DispCmdTriMesh::putdata, DispCmdSquare::putdata, DispCmdPolyLineArray::putdata, DispCmdLineArray::putdata, DispCmdLine::putdata, DispCmdLitPointArray::putdata, DispCmdPointArray::putdata, DispCmdLatticeCubeArray::putdata, DispCmdSphereArray::putdata, DispCmdSphere::putdata, DispCmdPoint::putdata, DispCmdComment::putdata, DispCmdBeginRepGeomGroup::putdata, and DispCmdTriangle::set_array.

const VMDClipPlane* VMDDisplayList::clipplane int    i [inline]
 

return clip plane info for read-only access.

Definition at line 107 of file VMDDisplayList.h.

References NULL, and VMD_MAX_CLIP_PLANE.

Referenced by Displayable::clipplane.

void VMDDisplayList::first VMDLinkIter   it const [inline]
 

get head of the list.

Definition at line 128 of file VMDDisplayList.h.

References it.

Referenced by DisplayDevice::pick, PSDisplayDevice::render, and FileRenderer::render.

int VMDDisplayList::get_clip_status int    i,
int &   
 

Set/get clip plane properties. Return true on success, false if failed.

Definition at line 163 of file VMDDisplayList.C.

References clipplanes, VMDClipPlane::mode, and VMD_MAX_CLIP_PLANE.

Referenced by Displayable::set_clip_center, Displayable::set_clip_color, Displayable::set_clip_normal, and Displayable::set_clip_status.

int VMDDisplayList::next VMDLinkIter   it,
char *&    d
const [inline]
 

get next item in the list.

Definition at line 134 of file VMDDisplayList.h.

References it, and size.

Referenced by DisplayDevice::pick, PSDisplayDevice::render, and FileRenderer::render.

void VMDDisplayList::operator delete void *   ,
size_t   
 

potentially shared mem allocation.

Definition at line 49 of file VMDDisplayList.C.

References vmd_dealloc.

void * VMDDisplayList::operator new size_t   
 

potentially shared mem allocation.

Definition at line 45 of file VMDDisplayList.C.

References n, and vmd_alloc.

void VMDDisplayList::reset_and_free unsigned long    newserial
 

Definition at line 117 of file VMDDisplayList.C.

References BASE_DISPLAYLIST_SIZE, NULL, serial, and vmd_dealloc.

Referenced by Displayable::reset_disp_list, and Displayable::~Displayable.

int VMDDisplayList::set_clip_center int    i,
const float *   
 

Set/get clip plane properties. Return true on success, false if failed.

Definition at line 141 of file VMDDisplayList.C.

References VMDClipPlane::center, clipplanes, and VMD_MAX_CLIP_PLANE.

Referenced by Displayable::set_clip_center.

int VMDDisplayList::set_clip_color int    i,
const float *   
 

Set/get clip plane properties. Return true on success, false if failed.

Definition at line 149 of file VMDDisplayList.C.

References clipplanes, VMDClipPlane::color, and VMD_MAX_CLIP_PLANE.

Referenced by Displayable::set_clip_color.

int VMDDisplayList::set_clip_normal int    i,
const float *   
 

Set/get clip plane properties. Return true on success, false if failed.

Definition at line 131 of file VMDDisplayList.C.

References clipplanes, length, norm, VMDClipPlane::normal, and VMD_MAX_CLIP_PLANE.

Referenced by Displayable::set_clip_normal.

int VMDDisplayList::set_clip_status int    i,
int   
 

Set/get clip plane properties. Return true on success, false if failed.

Definition at line 157 of file VMDDisplayList.C.

References clipplanes, VMDClipPlane::mode, and VMD_MAX_CLIP_PLANE.

Referenced by Displayable::set_clip_status.


Member Data Documentation

float VMDDisplayList::ambient
 

Material properties for this display list.

Definition at line 92 of file VMDDisplayList.h.

Referenced by Displayable::change_material, Displayable::Displayable, and FileRenderer::render.

int VMDDisplayList::cacheskip
 

display list cache skip flag.

Definition at line 82 of file VMDDisplayList.h.

Referenced by Displayable::cacheskip, Displayable::Displayable, and VMDDisplayList.

VMDClipPlane VMDDisplayList::clipplanes[VMD_MAX_CLIP_PLANE]
 

user clip planes.

Definition at line 97 of file VMDDisplayList.h.

Referenced by get_clip_status, DisplayDevice::pick, FileRenderer::render, set_clip_center, set_clip_color, set_clip_normal, and set_clip_status.

float VMDDisplayList::diffuse
 

Material properties for this display list.

Definition at line 92 of file VMDDisplayList.h.

Referenced by Displayable::change_material, Displayable::Displayable, and FileRenderer::render.

ResizeArray<Matrix4> VMDDisplayList::instances
 

molecule instance list.

Definition at line 88 of file VMDDisplayList.h.

Referenced by DisplayDevice::find_instance_images, and VMDDisplayList.

int VMDDisplayList::instanceset
 

molecule instance flags.

Definition at line 87 of file VMDDisplayList.h.

Referenced by DisplayDevice::find_instance_images, DrawMolItem::get_instances, DrawMolItem::prepare, DrawMolItem::set_instances, and VMDDisplayList.

Matrix4 VMDDisplayList::mat
 

transform matrix for this display list.

Definition at line 80 of file VMDDisplayList.h.

Referenced by DisplayDevice::pick, Displayable::recalc_mat, PSDisplayDevice::render, and FileRenderer::render.

int VMDDisplayList::materialtag
 

used to avoid unnecessary material changes.

Definition at line 94 of file VMDDisplayList.h.

Referenced by Displayable::change_material, Displayable::curr_material, Displayable::Displayable, FileRenderer::render, and VMDDisplayList.

float VMDDisplayList::mirror
 

Material properties for this display list.

Definition at line 92 of file VMDDisplayList.h.

Referenced by Displayable::change_material, Displayable::Displayable, and FileRenderer::render.

int VMDDisplayList::npbc
 

number of times to replicate the image.

Definition at line 84 of file VMDDisplayList.h.

Referenced by DisplayDevice::find_pbc_cells, DrawMolItem::get_pbc_images, DrawMolItem::set_pbc_images, and VMDDisplayList.

float VMDDisplayList::opacity
 

Material properties for this display list.

Definition at line 92 of file VMDDisplayList.h.

Referenced by Displayable::change_material, Displayable::Displayable, and FileRenderer::render.

float VMDDisplayList::outline
 

Material properties for this display list.

Definition at line 93 of file VMDDisplayList.h.

Referenced by Displayable::change_material, Displayable::Displayable, and FileRenderer::render.

float VMDDisplayList::outlinewidth
 

Material properties for this display list.

Definition at line 93 of file VMDDisplayList.h.

Referenced by Displayable::change_material, Displayable::Displayable, and FileRenderer::render.

int VMDDisplayList::pbc
 

periodic boundary condition flags.

Definition at line 83 of file VMDDisplayList.h.

Referenced by DisplayDevice::find_pbc_cells, DisplayDevice::find_pbc_images, DrawMolItem::get_pbc, DrawMolItem::prepare, DrawMolItem::set_pbc, and VMDDisplayList.

unsigned long VMDDisplayList::serial
 

globally unique serial# for cur contents.

Definition at line 81 of file VMDDisplayList.h.

Referenced by reset_and_free, and VMDDisplayList.

float VMDDisplayList::shininess
 

Material properties for this display list.

Definition at line 92 of file VMDDisplayList.h.

Referenced by Displayable::change_material, Displayable::Displayable, and FileRenderer::render.

float VMDDisplayList::specular
 

Material properties for this display list.

Definition at line 92 of file VMDDisplayList.h.

Referenced by Displayable::change_material, Displayable::Displayable, and FileRenderer::render.

float VMDDisplayList::transmode
 

Material properties for this display list.

Definition at line 93 of file VMDDisplayList.h.

Referenced by Displayable::change_material, Displayable::Displayable, and FileRenderer::render.

Matrix4 VMDDisplayList::transX
 

Definition at line 85 of file VMDDisplayList.h.

Referenced by DisplayDevice::find_pbc_images.

Matrix4 VMDDisplayList::transXinv
 

Definition at line 86 of file VMDDisplayList.h.

Referenced by DisplayDevice::find_pbc_images.

Matrix4 VMDDisplayList::transY
 

Definition at line 85 of file VMDDisplayList.h.

Referenced by DisplayDevice::find_pbc_images.

Matrix4 VMDDisplayList::transYinv
 

Definition at line 86 of file VMDDisplayList.h.

Referenced by DisplayDevice::find_pbc_images.

Matrix4 VMDDisplayList::transZ
 

how to create periodic images.

Definition at line 85 of file VMDDisplayList.h.

Referenced by DisplayDevice::find_pbc_images.

Matrix4 VMDDisplayList::transZinv
 

the inverse transforms.

Definition at line 86 of file VMDDisplayList.h.

Referenced by DisplayDevice::find_pbc_images.


The documentation for this class was generated from the following files:
Generated on Fri Apr 26 02:46:12 2024 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002