A convenient class for loading models from disk, in bam or egg format (or any of a number of other formats implemented by a LoaderFileType, such as ptloader).
More...
|
| Loader (const std::string &name="loader") |
|
virtual TypeHandle | force_init_type () |
|
const std::string & | get_task_chain () const |
| Returns the task chain that is used for asynchronous loads. More...
|
|
AsyncTaskManager * | get_task_manager () const |
| Returns the task manager that is used for asynchronous loads. More...
|
|
virtual TypeHandle | get_type () const |
|
void | load_async (AsyncTask *request) |
|
| PT (PandaNode) load_sync(const Filename &filename |
|
| PT (AsyncTask) make_async_request(const Filename &filename |
|
| PT (AsyncTask) make_async_save_request(const Filename &filename |
|
bool | remove (AsyncTask *task) |
| Removes a pending asynchronous load request. More...
|
|
void | save_async (AsyncTask *request) |
| Begins an asynchronous save request. More...
|
|
bool | save_sync (const Filename &filename, const LoaderOptions &options, PandaNode *node) const |
| Saves the file immediately, waiting for it to complete. More...
|
|
void | set_task_chain (const std::string &task_chain) |
| Specifies the task chain that is used for asynchronous loads. More...
|
|
void | set_task_manager (AsyncTaskManager *task_manager) |
| Specifies the task manager that is used for asynchronous loads. More...
|
|
void | stop_threads () |
| Stop any threads used for asynchronous loads. More...
|
|
| TypedReferenceCount (const TypedReferenceCount ©) |
|
void | operator= (const TypedReferenceCount ©) |
|
| TypedObject (const TypedObject ©)=default |
|
TypedObject * | as_typed_object () |
| Returns the object, upcast (if necessary) to a TypedObject pointer. More...
|
|
const TypedObject * | as_typed_object () const |
| Returns the object, upcast (if necessary) to a TypedObject pointer. More...
|
|
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. More...
|
|
bool | is_exact_type (TypeHandle handle) const |
| Returns true if the current object is the indicated type exactly. More...
|
|
bool | is_of_type (TypeHandle handle) const |
| Returns true if the current object is or derives from the indicated type. More...
|
|
TypedObject & | operator= (const TypedObject ©)=default |
|
int | get_ref_count () const |
|
WeakReferenceList * | get_weak_list () const |
| Returns the WeakReferenceList associated with this ReferenceCount object. More...
|
|
bool | has_weak_list () const |
| Returns true if this particular ReferenceCount object has a WeakReferenceList created, false otherwise. More...
|
|
void | local_object () |
| This function should be called, once, immediately after creating a new instance of some ReferenceCount-derived object on the stack. More...
|
|
void | ref () const |
| Explicitly increments the reference count. More...
|
|
bool | ref_if_nonzero () const |
| Atomically increases the reference count of this object if it is not zero. More...
|
|
bool | test_ref_count_integrity () const |
| Does some easy checks to make sure that the reference count isn't completely bogus. More...
|
|
bool | test_ref_count_nonzero () const |
| Does some easy checks to make sure that the reference count isn't zero, or completely bogus. More...
|
|
virtual bool | unref () const |
| Explicitly decrements the reference count. More...
|
|
WeakReferenceList * | weak_ref () |
| Adds the indicated PointerToVoid as a weak reference to this object. More...
|
|
void | weak_unref () |
| Removes the indicated PointerToVoid as a weak reference to this object. More...
|
|
| Namable (const std::string &initial_name="") |
|
void | clear_name () |
| Resets the Namable's name to empty. More...
|
|
const std::string & | get_name () const |
|
bool | has_name () const |
| Returns true if the Namable has a nonempty name set, false if the name is empty. More...
|
|
void | output (std::ostream &out) const |
| Outputs the Namable. More...
|
|
void | set_name (const std::string &name) |
|
A convenient class for loading models from disk, in bam or egg format (or any of a number of other formats implemented by a LoaderFileType, such as ptloader).
This class supports synchronous as well as asynchronous loading. In asynchronous loading, the model is loaded in the background by a thread, and an event will be generated when the model is available. If threading is not available, the asynchronous loading interface may be used, but it loads synchronously.
Definition at line 42 of file loader.h.
void Loader::save_async |
( |
AsyncTask * |
request | ) |
|
|
inline |
Begins an asynchronous save request.
To use this call, first call make_async_save_request() to create a new ModelSaveRequest object with the filename you wish to load, and then add that object to the Loader with save_async. This function will return immediately, and the model will be loaded in the background.
To determine when the model has completely loaded, you may poll request->is_ready() from time to time, or set the done_event on the request object and listen for that event. When the request is ready, you may retrieve the success or failure via request->get_success().
Definition at line 202 of file loader.I.
References AsyncTask::set_task_chain.