Panda3D
Public Member Functions | Static Public Member Functions | List of all members
TypedWritable Class Reference

Base class for objects that can be written to and read from Bam files. More...

Inheritance diagram for TypedWritable:
TypedObject PNMFileType TypedWritableReferenceCount WritableConfigurable BulletShape BulletTriangleMesh AnimGroup BamCacheRecord CachedTypedWritableReferenceCount CollisionEntry GeomVertexArrayFormat GeomVertexFormat GraphicsOutputBase GraphicsStateGuardianBase InternalName Lens Material MouseWatcherRegion MovieAudio MovieAudioCursor MovieVideo MovieVideoCursor PandaNode ParamValueBase PartGroup PGMouseWatcherParameter RenderAttrib RenderEffect RenderEffects Shader ShaderBuffer SliderTable Texture TextureStage TransformTable VertexSlider VertexTransform

Public Member Functions

object __reduce__ ()
 
object __reduce_persist__ (object pickler)
 
VectorUchar encodeToBamStream ()
 Converts the TypedWritable object into a single stream of data using a BamWriter, and returns that data as a bytes object. More...
 
bool encodeToBamStream (VectorUchar data, BamWriter writer)
 Converts the TypedWritable object into a single stream of data using a BamWriter, and stores that data in the indicated string. More...
 
 fillin (DatagramIterator scan, BamReader manager)
 This internal function is intended to be called by each class's make_from_bam() method to read in all of the relevant data from the BamFile for the new object. More...
 
UpdateSeq getBamModified ()
 Returns the current bam_modified counter. More...
 
 markBamModified ()
 Increments the bam_modified counter, so that this object will be invalidated and retransmitted on any open bam streams. More...
 
- Public Member Functions inherited from TypedObject
TypeHandle getType ()
 
int getTypeIndex ()
 Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. More...
 
bool isExactType (TypeHandle handle)
 Returns true if the current object is the indicated type exactly. More...
 
bool isOfType (TypeHandle handle)
 Returns true if the current object is or derives from the indicated type. More...
 

Static Public Member Functions

static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from TypedObject
static TypeHandle getClassType ()
 

Additional Inherited Members

- Public Attributes inherited from TypedObject
TypeHandle type
 Returns the TypeHandle representing this object's type. More...
 

Detailed Description

Base class for objects that can be written to and read from Bam files.

See also TypedObject for detailed instructions.

Member Function Documentation

◆ __reduce__()

object __reduce__ ( )

◆ __reduce_persist__()

object __reduce_persist__ ( object  pickler)

◆ encodeToBamStream() [1/2]

VectorUchar encodeToBamStream ( )

Converts the TypedWritable object into a single stream of data using a BamWriter, and returns that data as a bytes object.

Returns an empty bytes object on failure.

This is a convenience method particularly useful for cases when you are only serializing a single object. If you have many objects to process, it is more efficient to use the same BamWriter to serialize all of them together.

◆ encodeToBamStream() [2/2]

bool encodeToBamStream ( VectorUchar  data,
BamWriter  writer 
)

Converts the TypedWritable object into a single stream of data using a BamWriter, and stores that data in the indicated string.

Returns true on success, false on failure.

This is a convenience method particularly useful for cases when you are only serializing a single object. If you have many objects to process, it is more efficient to use the same BamWriter to serialize all of them together.

◆ fillin()

fillin ( DatagramIterator  scan,
BamReader  manager 
)

This internal function is intended to be called by each class's make_from_bam() method to read in all of the relevant data from the BamFile for the new object.

It is also called directly by the BamReader to re-read the data for an object that has been placed on the stream for an update.

◆ getBamModified()

UpdateSeq getBamModified ( )

Returns the current bam_modified counter.

This counter is normally incremented automatically whenever the object is modified.

◆ getClassType()

static TypeHandle getClassType ( )
static

◆ markBamModified()

markBamModified ( )

Increments the bam_modified counter, so that this object will be invalidated and retransmitted on any open bam streams.

This should normally not need to be called by user code; it should be called internally when the object has been changed in a way that legitimately requires its retransmission to any connected clients.