Panda3D
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Friends | List of all members
BamCacheIndex Class Reference

This represents the in-memory index that records the list of files stored in the BamCache. More...

#include "bamCacheIndex.h"

Inheritance diagram for BamCacheIndex:
TypedWritable LinkedListNode TypedObject MemoryBase

Public Member Functions

virtual TypeHandle force_init_type ()
 
virtual TypeHandle get_type () const
 
void write (std::ostream &out, int indent_level=0) const
 
virtual void write_datagram (BamWriter *manager, Datagram &dg)
 Writes the contents of this object to the datagram for shipping out to a Bam file.
 
- Public Member Functions inherited from TypedWritable
 TypedWritable (const TypedWritable &copy)
 
virtual ReferenceCountas_reference_count ()
 Returns the pointer cast to a ReferenceCount pointer, if it is in fact of that type.
 
vector_uchar encode_to_bam_stream () const
 Converts the TypedWritable object into a single stream of data using a BamWriter, and returns that data as a bytes object.
 
bool encode_to_bam_stream (vector_uchar &data, BamWriter *writer=nullptr) const
 Converts the TypedWritable object into a single stream of data using a BamWriter, and stores that data in the indicated string.
 
virtual void finalize (BamReader *manager)
 Called by the BamReader to perform any final actions needed for setting up the object after all objects have been read and all pointers have been completed.
 
UpdateSeq get_bam_modified () const
 Returns the current bam_modified counter.
 
void mark_bam_modified ()
 Increments the bam_modified counter, so that this object will be invalidated and retransmitted on any open bam streams.
 
void operator= (const TypedWritable &copy)
 
virtual bool require_fully_complete () const
 Some objects require all of their nested pointers to have been completed before the objects themselves can be completed.
 
virtual void update_bam_nested (BamWriter *manager)
 Called by the BamWriter when this object has not itself been modified recently, but it should check its nested objects for updates.
 
- Public Member Functions inherited from TypedObject
 TypedObject (const TypedObject &copy)=default
 
TypedObjectas_typed_object ()
 Returns the object, upcast (if necessary) to a TypedObject pointer.
 
const TypedObjectas_typed_object () const
 Returns the object, upcast (if necessary) to a TypedObject pointer.
 
int get_best_parent_from_Set (const std::set< int > &) const
 
int get_type_index () const
 Returns the internal index number associated with this object's TypeHandle, a unique number for each different type.
 
bool is_exact_type (TypeHandle handle) const
 Returns true if the current object is the indicated type exactly.
 
bool is_of_type (TypeHandle handle) const
 Returns true if the current object is or derives from the indicated type.
 
TypedObjectoperator= (const TypedObject &copy)=default
 
- Public Member Functions inherited from MemoryBase
void operator delete (void *, void *)
 
void operator delete (void *ptr)
 
void operator delete[] (void *, void *)
 
void operator delete[] (void *ptr)
 
void * operator new (size_t size)
 
void * operator new (size_t size, void *ptr)
 
void * operator new[] (size_t size)
 
void * operator new[] (size_t size, void *ptr)
 

Static Public Member Functions

static TypeHandle get_class_type ()
 
static void init_type ()
 
static void register_with_read_factory ()
 Tells the BamReader how to create objects of type BamCacheRecord.
 
- Static Public Member Functions inherited from TypedWritable
static bool decode_raw_from_bam_stream (TypedWritable *&ptr, ReferenceCount *&ref_ptr, vector_uchar data, BamReader *reader=nullptr)
 Reads the bytes created by a previous call to encode_to_bam_stream(), and extracts the single object on those bytes.
 
static TypeHandle get_class_type ()
 
static void init_type ()
 
- Static Public Member Functions inherited from TypedObject
static TypeHandle get_class_type ()
 
static void init_type ()
 This function is declared non-inline to work around a compiler bug in g++ 2.96.
 

Friends

class BamCache
 

Additional Inherited Members

- Public Attributes inherited from TypedObject
 get_type
 
- Static Public Attributes inherited from TypedWritable
static TypedWritable *const Null = nullptr
 

Detailed Description

This represents the in-memory index that records the list of files stored in the BamCache.

Since the memory is also flushed to disk from time to time, this class is a TypedWritable object.

For the most part, this class is used only by the BamCache class.

Definition at line 33 of file bamCacheIndex.h.

Member Function Documentation

◆ force_init_type()

virtual TypeHandle BamCacheIndex::force_init_type ( )
inlinevirtual

Reimplemented from TypedWritable.

Definition at line 81 of file bamCacheIndex.h.

◆ get_class_type()

static TypeHandle BamCacheIndex::get_class_type ( )
inlinestatic

Definition at line 70 of file bamCacheIndex.h.

◆ get_type()

virtual TypeHandle BamCacheIndex::get_type ( ) const
inlinevirtual

Reimplemented from TypedWritable.

Definition at line 78 of file bamCacheIndex.h.

◆ init_type()

static void BamCacheIndex::init_type ( )
inlinestatic

Definition at line 73 of file bamCacheIndex.h.

◆ register_with_read_factory()

void BamCacheIndex::register_with_read_factory ( )
static

Tells the BamReader how to create objects of type BamCacheRecord.

Definition at line 176 of file bamCacheIndex.cxx.

References BamReader::get_factory(), and Factory< Type >::register_factory().

Referenced by init_libputil().

◆ write()

void BamCacheIndex::write ( std::ostream & out,
int indent_level = 0 ) const

Definition at line 39 of file bamCacheIndex.cxx.

◆ write_datagram()

void BamCacheIndex::write_datagram ( BamWriter * manager,
Datagram & dg )
virtual

Writes the contents of this object to the datagram for shipping out to a Bam file.

Reimplemented from TypedWritable.

Definition at line 185 of file bamCacheIndex.cxx.

References Datagram::add_uint32(), TypedWritable::write_datagram(), and BamWriter::write_pointer().

Friends And Related Symbol Documentation

◆ BamCache

friend class BamCache
friend

Definition at line 86 of file bamCacheIndex.h.


The documentation for this class was generated from the following files: