Guitar
GenerateCommitMessageThread.h
Go to the documentation of this file.
1 #ifndef GENERATECOMMITMESSAGETHREAD_H
2 #define GENERATECOMMITMESSAGETHREAD_H
3 
5 #include <QObject>
7 #include <condition_variable>
8 #include <mutex>
9 #include <thread>
10 
11 class GenerateCommitMessageThread : public QObject {
12  Q_OBJECT
13 public:
14  std::mutex mutex_;
15  std::thread thread_;
16  std::condition_variable cv_;
17  bool requested_ = false;
18  bool interrupted_ = false;
20  std::string diff_;
21  std::string status_s_u_;
22  std::string hint_;
23 
26  void start();
27  void stop();
28  void request(GenerativeAI::Model ai_model, std::string const &diff, const std::string &status_s_u, const std::string &hint);
29 signals:
30  void ready(GeneratedCommitMessage const &message);
31 
32 };
33 
34 #endif // GENERATECOMMITMESSAGETHREAD_H
Definition: GenerateCommitMessageThread.h:11
std::string hint_
Definition: GenerateCommitMessageThread.h:22
void request(GenerativeAI::Model ai_model, std::string const &diff, const std::string &status_s_u, const std::string &hint)
Definition: GenerateCommitMessageThread.cpp:51
bool interrupted_
Definition: GenerateCommitMessageThread.h:18
std::condition_variable cv_
Definition: GenerateCommitMessageThread.h:16
std::string diff_
Definition: GenerateCommitMessageThread.h:20
void ready(GeneratedCommitMessage const &message)
GenerativeAI::Model ai_model_
Definition: GenerateCommitMessageThread.h:19
std::thread thread_
Definition: GenerateCommitMessageThread.h:15
void start()
Definition: GenerateCommitMessageThread.cpp:16
~GenerateCommitMessageThread()
Definition: GenerateCommitMessageThread.cpp:11
std::string status_s_u_
Definition: GenerateCommitMessageThread.h:21
bool requested_
Definition: GenerateCommitMessageThread.h:17
GenerateCommitMessageThread()
Definition: GenerateCommitMessageThread.cpp:6
void stop()
Definition: GenerateCommitMessageThread.cpp:42
std::mutex mutex_
Definition: GenerateCommitMessageThread.h:14
Definition: GeneratedCommitMessage.h:7
Definition: GenerativeAI.h:95