26 namespace SourceXtractor {
43 m_max_memory(100 * 1024L * 1024L), m_total_memory_used(0) {
53 boost::lock_guard<boost::shared_mutex> wr_lock(
m_mutex);
63 boost::lock_guard<boost::shared_mutex> wr_lock(
m_mutex);
75 boost::shared_lock<boost::shared_mutex> shared_rd_lock(
m_mutex);
91 boost::upgrade_lock<boost::shared_mutex> upgrade_lock(
m_mutex);
94 boost::upgrade_to_unique_lock<boost::shared_mutex>
unique_lock(upgrade_lock);
95 mit =
m_mutex_map.emplace(src_ptr, std::make_shared<boost::mutex>()).first;
117 boost::lock_guard<boost::mutex> img_lock(*img_mutex);
125 tile = source->getImageTile(x, y,
126 std::min(m_tile_width, source->getWidth() -
x),
127 std::min(m_tile_height, source->getHeight() -
y));
130 boost::lock_guard<boost::shared_mutex> wr_lock(
m_mutex);
131 addTile(key, std::static_pointer_cast<ImageTile>(tile));
144 boost::lock_guard<boost::shared_mutex> wr_lock(
m_mutex);
166 tile->saveIfModified();
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > x
void debug(const std::string &logMessage)
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > y
T dynamic_pointer_cast(T...args)
static Logging getLogger(const std::string &name="")