1
0

initial commit

This commit is contained in:
2025-10-21 07:58:47 -05:00
commit 19adc4e2b0
144 changed files with 107723 additions and 0 deletions

View File

@@ -0,0 +1,39 @@
#ifndef _AUTOTHREAD_H
#define _AUTOTHREAD_H
#include <siacommon.h>
NS_BEGIN(Sia)
NS_BEGIN(Api)
class CSiaDriveConfig;
class CSiaCurl;
class SIADRIVE_EXPORTABLE CAutoThread
{
public:
CAutoThread(CSiaDriveConfig* siaDriveConfig);
CAutoThread(CSiaDriveConfig* siaDriveConfig, std::function<void(CSiaDriveConfig*)> autoThreadCallback);
public:
virtual ~CAutoThread();
private:
bool _stopRequested;
CSiaDriveConfig* _siaDriveConfig;
std::function<void(CSiaDriveConfig*)> _AutoThreadCallback;
std::unique_ptr<std::thread> _thread;
std::mutex _startStopMutex;
std::mutex _stopMutex;
std::condition_variable _stopEvent;
protected:
virtual void AutoThreadCallback(CSiaDriveConfig* siaDriveConfig);
public:
bool IsRunning() const;
void StartAutoThread();
void StopAutoThread();
};
NS_END(2)
#endif //_AUTOTHREAD_H