view OrthancServer/Plugins/Samples/DelayedDeletion/PendingDeletionsDatabase.h @ 5132:482f3e80ed0a

cppcheck
author Alain Mazy <am@osimis.io>
date Thu, 05 Jan 2023 18:03:25 +0100
parents c2ebc47f4f18
children 99751c5a7cfe
line wrap: on
line source

#pragma once


#include "../../../../OrthancFramework/Sources/SQLite/Connection.h"
#include <boost/thread/mutex.hpp>
#include <boost/noncopyable.hpp>

class PendingDeletionsDatabase : public boost::noncopyable
{
private:
  boost::mutex                 mutex_;
  Orthanc::SQLite::Connection  db_;

  void Setup();
  
public:
  PendingDeletionsDatabase(const std::string& path);

  void Enqueue(const std::string& uuid,
               Orthanc::FileContentType type);
  
  bool Dequeue(std::string& uuid,
               Orthanc::FileContentType& type);

  unsigned int GetSize();
};