23 #ifndef _PLUGINS_MONGODB_LOG_MONGODB_LOG_IMAGE_THREAD_H_ 24 #define _PLUGINS_MONGODB_LOG_MONGODB_LOG_IMAGE_THREAD_H_ 26 #include <aspect/blocked_timing.h> 27 #include <aspect/clock.h> 28 #include <aspect/configurable.h> 29 #include <aspect/logging.h> 30 #include <aspect/pointcloud.h> 31 #include <core/threading/mutex.h> 32 #include <core/threading/thread.h> 33 #include <plugins/mongodb/aspect/mongodb.h> 40 namespace firevision {
41 class SharedMemoryImageBuffer;
78 void get_sets(std::set<std::string> &missing_images, std::set<std::string> &unbacked_images);
84 std::string topic_name;
89 std::map<std::string, ImageInfo> imgs_;
93 mongo::DBClientBase *mongodb_;
94 mongo::GridFS * gridfs_;
95 std::string collection_;
96 std::string database_;
101 std::vector<std::string> includes_;
102 std::vector<std::string> excludes_;
104 unsigned int cfg_chunk_size_;
105 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.
ImageInfo representation for JSON transfer.
virtual void run()
Stub to see name in backtrace for easier debugging.