Panda3D
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties
Public Member Functions | Static Public Member Functions
GeomVertexArrayDataHandle Class Reference

This data object is returned by GeomVertexArrayData::get_handle() or modify_handle(). More...

Inheritance diagram for GeomVertexArrayDataHandle:
ReferenceCount GeomEnums

List of all members.

Public Member Functions

 clearRows ()
 copyDataFrom (GeomVertexArrayDataHandle const other)
 Copies the entire data array from the other object.
 copySubdataFrom (unsigned int to_start, unsigned int to_size, GeomVertexArrayDataHandle const other, unsigned int from_start, unsigned int from_size)
 Copies a portion of the data array from the other object into a portion of the data array of this object.
GeomVertexArrayFormat const getArrayFormat ()
string getData ()
 Returns the entire raw data of the GeomVertexArrayData object, formatted as a string.
int getDataSizeBytes ()
UpdateSeq getModified ()
int getNumRows ()
GeomVertexArrayData getObject ()
GeomVertexArrayData const getObject ()
string getSubdata (unsigned int start, unsigned int size)
 Returns a subset of the raw data of the GeomVertexArrayData object, formatted as a string.
UsageHint getUsageHint ()
 markUsed ()
 Marks the array data recently-used.
bool requestResident ()
 Returns true if the vertex data is currently resident in memory.
bool reserveNumRows (int n)
 setData (string data)
 Replaces the entire raw data array with the contents of the indicated string.
bool setNumRows (int n)
 setSubdata (unsigned int start, unsigned int size, string data)
 Replaces a portion of the data array from the indicated string.
bool uncleanSetNumRows (int n)

Static Public Member Functions

static TypeHandle getClassType ()

Detailed Description

This data object is returned by GeomVertexArrayData::get_handle() or modify_handle().

As long as it exists, the data is locked; when the last of these destructs, the data is unlocked.

Only one thread at a time may lock the data; other threads attempting to lock the data will block. A given thread may simultaneously lock the data multiple times.

This class serves in lieu of a pair of GeomVertexArrayDataPipelineReader and GeomVertexArrayDataPipelineWriter classes


Member Function Documentation

clearRows ( )

Copies the entire data array from the other object.

copySubdataFrom ( unsigned int  to_start,
unsigned int  to_size,
GeomVertexArrayDataHandle const  other,
unsigned int  from_start,
unsigned int  from_size 
)

Copies a portion of the data array from the other object into a portion of the data array of this object.

If to_size != from_size, the size of this data array is adjusted accordingly.

static TypeHandle getClassType ( ) [static]

Reimplemented from ReferenceCount.

string getData ( )

Returns the entire raw data of the GeomVertexArrayData object, formatted as a string.

This is primarily for the benefit of high-level languages such as Python.

string getSubdata ( unsigned int  start,
unsigned int  size 
)

Returns a subset of the raw data of the GeomVertexArrayData object, formatted as a string.

This is primarily for the benefit of high-level languages such as Python.

markUsed ( )

Marks the array data recently-used.

bool requestResident ( )

Returns true if the vertex data is currently resident in memory.

If this returns true, the next call to get_handle()->get_read_pointer() will probably not block. If this returns false, the vertex data will be brought back into memory shortly; try again later.

bool reserveNumRows ( int  n)
setData ( string  data)

Replaces the entire raw data array with the contents of the indicated string.

This is primarily for the benefit of high-level languages like Python.

bool setNumRows ( int  n)
setSubdata ( unsigned int  start,
unsigned int  size,
string  data 
)

Replaces a portion of the data array from the indicated string.

If size != data.size(), the size of this data array is adjusted accordingly.

This is primarily for the benefit of high-level languages like Python.

bool uncleanSetNumRows ( int  n)
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties