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...
Classes | |
class | Results |
Public Member Functions | |
PandaLoader (string name) | |
PandaLoader () | |
string | getTaskChain () |
Returns the task chain that is used for asynchronous loads. | |
AsyncTaskManager | getTaskManager () |
Returns the task manager that is used for asynchronous loads. | |
loadAsync (AsyncTask request) | |
Begins an asynchronous load request. | |
PandaNode | loadBamStream (istream in) |
Attempts to read a bam file from the indicated stream and return the scene graph defined there. | |
PandaNode | loadSync (Filename const filename, LoaderOptions const options) |
Loads the file immediately, waiting for it to complete. | |
PandaNode | loadSync (Filename const filename) |
Loads the file immediately, waiting for it to complete. | |
AsyncTask | makeAsyncRequest (Filename const filename, LoaderOptions const options) |
Returns a new AsyncTask object suitable for adding to load_async() to start an asynchronous model load. | |
AsyncTask | makeAsyncRequest (Filename const filename) |
Returns a new AsyncTask object suitable for adding to load_async() to start an asynchronous model load. | |
output (ostream out) | |
Outputs the Namable. | |
bool | remove (AsyncTask task) |
Removes a pending asynchronous load request. | |
setTaskChain (string task_chain) | |
Specifies the task chain that is used for asynchronous loads. | |
setTaskManager (AsyncTaskManager task_manager) | |
Specifies the task manager that is used for asynchronous loads. | |
stopThreads () | |
Stop any threads used for asynchronous loads. | |
Static Public Member Functions | |
static TypeHandle | getClassType () |
static PandaLoader | getGlobalPtr () |
Returns a pointer to the global Loader. |
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.
PandaLoader | ( | string | name | ) |
PandaLoader | ( | ) |
static TypeHandle getClassType | ( | ) | [static] |
Reimplemented from TypedReferenceCount.
static PandaLoader getGlobalPtr | ( | ) | [static] |
Returns a pointer to the global Loader.
This is the Loader that most code should use for loading models.
string getTaskChain | ( | ) |
Returns the task chain that is used for asynchronous loads.
Returns the task manager that is used for asynchronous loads.
Begins an asynchronous load request.
To use this call, first create a new ModelLoadRequest object with the filename you wish to load, and then add that object to the Loader with load_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 model is ready, you may retrieve it via request->get_model().
PandaNode loadBamStream | ( | istream | in | ) |
Attempts to read a bam file from the indicated stream and return the scene graph defined there.
PandaNode loadSync | ( | Filename const | filename, |
LoaderOptions const | options | ||
) |
Loads the file immediately, waiting for it to complete.
If search is true, the file is searched for along the model path; otherwise, only the exact filename is loaded.
Loads the file immediately, waiting for it to complete.
If search is true, the file is searched for along the model path; otherwise, only the exact filename is loaded.
AsyncTask makeAsyncRequest | ( | Filename const | filename, |
LoaderOptions const | options | ||
) |
Returns a new AsyncTask object suitable for adding to load_async() to start an asynchronous model load.
AsyncTask makeAsyncRequest | ( | Filename const | filename | ) |
Returns a new AsyncTask object suitable for adding to load_async() to start an asynchronous model load.
Removes a pending asynchronous load request.
Returns true if successful, false otherwise.
setTaskChain | ( | string | task_chain | ) |
Specifies the task chain that is used for asynchronous loads.
The default is the initial name of the Loader object.
setTaskManager | ( | AsyncTaskManager | task_manager | ) |
Specifies the task manager that is used for asynchronous loads.
The default is the global task manager.
stopThreads | ( | ) |
Stop any threads used for asynchronous loads.