23 #ifndef __PLUGINS_MONGODB_LOG_MONGODB_LOG_IMAGE_THREAD_H_ 24 #define __PLUGINS_MONGODB_LOG_MONGODB_LOG_IMAGE_THREAD_H_ 26 #include <core/threading/thread.h> 27 #include <aspect/blocked_timing.h> 28 #include <aspect/clock.h> 29 #include <aspect/configurable.h> 30 #include <aspect/logging.h> 31 #include <aspect/pointcloud.h> 32 #include <plugins/mongodb/aspect/mongodb.h> 33 #include <core/threading/mutex.h> 41 class SharedMemoryImageBuffer;
70 protected:
virtual void run() { Thread::run(); }
74 void get_sets(std::set<std::string> &missing_images,
75 std::set<std::string> &unbacked_images);
80 std::string topic_name;
85 std::map<std::string, ImageInfo> imgs_;
89 mongo::DBClientBase *mongodb_;
90 mongo::GridFS *gridfs_;
91 std::string collection_;
92 std::string database_;
97 std::vector<std::string> includes_;
98 std::vector<std::string> excludes_;
100 unsigned int cfg_chunk_size_;
101 float cfg_storage_interval_;
Thread aspect that allows to obtain the current time from the clock.
MongoLogImagesThread()
Constructor.
Fawkes library namespace.
virtual ~MongoLogImagesThread()
Destructor.
A class for handling time.
Thread class encapsulation of pthreads.
virtual void finalize()
Finalize the thread.
virtual void init()
Initialize the thread.
Thread aspect to access MongoDB.
virtual void loop()
Code to execute in the thread.
Shared memory image buffer.
virtual bool prepare_finalize_user()
Prepare finalization user implementation.
Thread aspect to log output.
Thread aspect to access configuration data.
Thread to export Fawkes images to MongoDB.
Mutex mutual exclusion lock.
virtual void run()
Stub to see name in backtrace for easier debugging.