#include <llvfsthread.h>


Public Types | |
| enum | operation_t { FILE_READ, FILE_WRITE, FILE_RENAME } |
Public Member Functions | |
| LLVFSThread (bool threaded=TRUE) | |
| ~LLVFSThread () | |
| handle_t | read (LLVFS *vfs, const LLUUID &file_id, const LLAssetType::EType file_type, U8 *buffer, S32 offset, S32 numbytes, U32 pri=PRIORITY_NORMAL, U32 flags=0) |
| handle_t | write (LLVFS *vfs, const LLUUID &file_id, const LLAssetType::EType file_type, U8 *buffer, S32 offset, S32 numbytes, U32 flags) |
| S32 | readImmediate (LLVFS *vfs, const LLUUID &file_id, const LLAssetType::EType file_type, U8 *buffer, S32 offset, S32 numbytes) |
| S32 | writeImmediate (LLVFS *vfs, const LLUUID &file_id, const LLAssetType::EType file_type, U8 *buffer, S32 offset, S32 numbytes) |
| bool | processRequest (QueuedRequest *req) |
Static Public Member Functions | |
| static void | initClass (bool local_is_threaded=TRUE) |
| static S32 | updateClass (U32 ms_elapsed) |
| static void | cleanupClass () |
| static void | setDataPath (const std::string &path) |
Static Public Attributes | |
| static std::string | sDataPath = "" |
| static LLVFSThread * | sLocal = NULL |
Classes | |
| class | Request |
Definition at line 48 of file llvfsthread.h.
| LLVFSThread::LLVFSThread | ( | bool | threaded = TRUE |
) |
Definition at line 73 of file llvfsthread.cpp.
Referenced by initClass().

| LLVFSThread::~LLVFSThread | ( | ) |
Definition at line 78 of file llvfsthread.cpp.
| LLVFSThread::handle_t LLVFSThread::read | ( | LLVFS * | vfs, | |
| const LLUUID & | file_id, | |||
| const LLAssetType::EType | file_type, | |||
| U8 * | buffer, | |||
| S32 | offset, | |||
| S32 | numbytes, | |||
| U32 | pri = PRIORITY_NORMAL, |
|||
| U32 | flags = 0 | |||
| ) |
Definition at line 85 of file llvfsthread.cpp.
References LLQueuedThread::addRequest(), LLVFSThread::Request::deleteRequest(), FILE_READ, LLQueuedThread::generateHandle(), indra::ipc::xml_rpc::handle(), llendl, llerrs, llmax(), LLQueuedThread::nullHandle(), and LLQueuedThread::PRIORITY_LOW.
Referenced by LLVFile::read().


| LLVFSThread::handle_t LLVFSThread::write | ( | LLVFS * | vfs, | |
| const LLUUID & | file_id, | |||
| const LLAssetType::EType | file_type, | |||
| U8 * | buffer, | |||
| S32 | offset, | |||
| S32 | numbytes, | |||
| U32 | flags | |||
| ) |
Definition at line 128 of file llvfsthread.cpp.
References LLQueuedThread::addRequest(), LLVFSThread::Request::deleteRequest(), FILE_WRITE, LLQueuedThread::generateHandle(), indra::ipc::xml_rpc::handle(), llendl, llerrs, and LLQueuedThread::nullHandle().
Referenced by LLVFile::write().


| S32 LLVFSThread::readImmediate | ( | LLVFS * | vfs, | |
| const LLUUID & | file_id, | |||
| const LLAssetType::EType | file_type, | |||
| U8 * | buffer, | |||
| S32 | offset, | |||
| S32 | numbytes | |||
| ) |
Definition at line 105 of file llvfsthread.cpp.
References LLQueuedThread::addRequest(), LLQueuedThread::completeRequest(), LLVFSThread::Request::deleteRequest(), FILE_READ, LLQueuedThread::generateHandle(), LLVFSThread::Request::getBytesRead(), indra::ipc::xml_rpc::handle(), llendl, llerrs, llverify, LLQueuedThread::PRIORITY_IMMEDIATE, S32, and LLQueuedThread::waitForResult().
Referenced by LLVFile::read().


| S32 LLVFSThread::writeImmediate | ( | LLVFS * | vfs, | |
| const LLUUID & | file_id, | |||
| const LLAssetType::EType | file_type, | |||
| U8 * | buffer, | |||
| S32 | offset, | |||
| S32 | numbytes | |||
| ) |
Definition at line 147 of file llvfsthread.cpp.
References LLQueuedThread::addRequest(), LLQueuedThread::completeRequest(), LLVFSThread::Request::deleteRequest(), FILE_WRITE, LLQueuedThread::generateHandle(), LLVFSThread::Request::getBytesRead(), indra::ipc::xml_rpc::handle(), llendl, llerrs, llverify, LLQueuedThread::PRIORITY_IMMEDIATE, S32, and LLQueuedThread::waitForResult().
Referenced by LLVFile::write().


| bool LLVFSThread::processRequest | ( | QueuedRequest * | req | ) |
| void LLVFSThread::initClass | ( | bool | local_is_threaded = TRUE |
) | [static] |
Definition at line 46 of file llvfsthread.cpp.
References llassert, LLVFSThread(), NULL, and sLocal.
Referenced by LLAppViewer::initThreads().


Definition at line 53 of file llvfsthread.cpp.
References LLQueuedThread::getPending(), sLocal, and LLQueuedThread::update().
Referenced by LLAppViewer::cleanup(), and LLAppViewer::mainLoop().


| void LLVFSThread::cleanupClass | ( | ) | [static] |
Definition at line 60 of file llvfsthread.cpp.
References LLQueuedThread::getPending(), LLThread::setQuitting(), sLocal, and LLQueuedThread::update().
Referenced by LLAppViewer::cleanup().


| static void LLVFSThread::setDataPath | ( | const std::string & | path | ) | [inline, static] |
std::string LLVFSThread::sDataPath = "" [static] |
LLVFSThread * LLVFSThread::sLocal = NULL [static] |
Definition at line 115 of file llvfsthread.h.
Referenced by cleanupClass(), initClass(), LLVFile::initClass(), and updateClass().
1.5.5