summaryrefslogtreecommitdiff
path: root/indra/llfilesystem/lllfsthread.h
diff options
context:
space:
mode:
authorAndrey Lihatskiy <alihatskiy@productengine.com>2024-05-16 01:08:13 +0300
committerGitHub <noreply@github.com>2024-05-16 01:08:13 +0300
commitd41e167aa9a22b446cbcfe6fd4ebdd810c61ba73 (patch)
tree3ed50d019b3d78c748ed6b46ca69f2ca7943f41a /indra/llfilesystem/lllfsthread.h
parent29be88d60d654193926add496d2d851f7c217356 (diff)
parentbdb8caf790207e1a6f46d495a586b38bb52e58e9 (diff)
Merge pull request #1478 from secondlife/marchcat/x-mf-merge
Maint X -> Materials Featurette merge
Diffstat (limited to 'indra/llfilesystem/lllfsthread.h')
-rw-r--r--indra/llfilesystem/lllfsthread.h170
1 files changed, 85 insertions, 85 deletions
diff --git a/indra/llfilesystem/lllfsthread.h b/indra/llfilesystem/lllfsthread.h
index f2693a1172..3230c0c2ae 100644
--- a/indra/llfilesystem/lllfsthread.h
+++ b/indra/llfilesystem/lllfsthread.h
@@ -1,25 +1,25 @@
-/**
+/**
* @file lllfsthread.h
* @brief LLLFSThread base class
*
* $LicenseInfo:firstyear=2000&license=viewerlgpl$
* Second Life Viewer Source Code
* Copyright (C) 2010, Linden Research, Inc.
- *
+ *
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation;
* version 2.1 of the License only.
- *
+ *
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
- *
+ *
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
+ *
* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
* $/LicenseInfo$
*/
@@ -41,97 +41,97 @@
class LLLFSThread : public LLQueuedThread
{
- //------------------------------------------------------------------------
+ //------------------------------------------------------------------------
public:
- enum operation_t {
- FILE_READ,
- FILE_WRITE,
- FILE_RENAME,
- FILE_REMOVE
- };
+ enum operation_t {
+ FILE_READ,
+ FILE_WRITE,
+ FILE_RENAME,
+ FILE_REMOVE
+ };
- //------------------------------------------------------------------------
+ //------------------------------------------------------------------------
public:
- class Responder : public LLThreadSafeRefCount
- {
- protected:
- ~Responder();
- public:
- virtual void completed(S32 bytes) = 0;
- };
+ class Responder : public LLThreadSafeRefCount
+ {
+ protected:
+ ~Responder();
+ public:
+ virtual void completed(S32 bytes) = 0;
+ };
+
+ class Request : public QueuedRequest
+ {
+ protected:
+ virtual ~Request(); // use deleteRequest()
+
+ public:
+ Request(LLLFSThread* thread,
+ handle_t handle,
+ operation_t op, const std::string& filename,
+ U8* buffer, S32 offset, S32 numbytes,
+ Responder* responder);
- class Request : public QueuedRequest
- {
- protected:
- virtual ~Request(); // use deleteRequest()
-
- public:
- Request(LLLFSThread* thread,
- handle_t handle,
- operation_t op, const std::string& filename,
- U8* buffer, S32 offset, S32 numbytes,
- Responder* responder);
+ S32 getBytes()
+ {
+ return mBytes;
+ }
+ S32 getBytesRead()
+ {
+ return mBytesRead;
+ }
+ S32 getOperation()
+ {
+ return mOperation;
+ }
+ U8* getBuffer()
+ {
+ return mBuffer;
+ }
+ const std::string& getFilename()
+ {
+ return mFileName;
+ }
- S32 getBytes()
- {
- return mBytes;
- }
- S32 getBytesRead()
- {
- return mBytesRead;
- }
- S32 getOperation()
- {
- return mOperation;
- }
- U8* getBuffer()
- {
- return mBuffer;
- }
- const std::string& getFilename()
- {
- return mFileName;
- }
-
- /*virtual*/ bool processRequest();
- /*virtual*/ void finishRequest(bool completed);
- /*virtual*/ void deleteRequest();
-
- private:
- LLLFSThread* mThread;
- operation_t mOperation;
-
- std::string mFileName;
-
- U8* mBuffer; // dest for reads, source for writes, new UUID for rename
- S32 mOffset; // offset into file, -1 = append (WRITE only)
- S32 mBytes; // bytes to read from file, -1 = all
- S32 mBytesRead; // bytes read from file
+ /*virtual*/ bool processRequest();
+ /*virtual*/ void finishRequest(bool completed);
+ /*virtual*/ void deleteRequest();
- LLPointer<Responder> mResponder;
- };
+ private:
+ LLLFSThread* mThread;
+ operation_t mOperation;
- //------------------------------------------------------------------------
+ std::string mFileName;
+
+ U8* mBuffer; // dest for reads, source for writes, new UUID for rename
+ S32 mOffset; // offset into file, -1 = append (WRITE only)
+ S32 mBytes; // bytes to read from file, -1 = all
+ S32 mBytesRead; // bytes read from file
+
+ LLPointer<Responder> mResponder;
+ };
+
+ //------------------------------------------------------------------------
public:
- LLLFSThread(bool threaded = TRUE);
- ~LLLFSThread();
+ LLLFSThread(bool threaded = TRUE);
+ ~LLLFSThread();
+
+ // Return a Request handle
+ handle_t read(const std::string& filename, /* Flawfinder: ignore */
+ U8* buffer, S32 offset, S32 numbytes,
+ Responder* responder);
+ handle_t write(const std::string& filename,
+ U8* buffer, S32 offset, S32 numbytes,
+ Responder* responder);
+
+ // static initializers
+ static void initClass(bool local_is_threaded = TRUE); // Setup sLocal
+ static S32 updateClass(U32 ms_elapsed);
+ static void cleanupClass(); // Delete sLocal
- // Return a Request handle
- handle_t read(const std::string& filename, /* Flawfinder: ignore */
- U8* buffer, S32 offset, S32 numbytes,
- Responder* responder);
- handle_t write(const std::string& filename,
- U8* buffer, S32 offset, S32 numbytes,
- Responder* responder);
-
- // static initializers
- static void initClass(bool local_is_threaded = TRUE); // Setup sLocal
- static S32 updateClass(U32 ms_elapsed);
- static void cleanupClass(); // Delete sLocal
-
public:
- static LLLFSThread* sLocal; // Default local file thread
+ static LLLFSThread* sLocal; // Default local file thread
};
//============================================================================