OsdVector::OsdVector()
{
+ logger = LogNT::getInstance();
+
setlocale(LC_CTYPE, "C.UTF-8");
#ifdef PICTURE_DECODER_MAGICK
reader.addDecoder(new MagickDecoder(&reader));
if (!screenShotInternal(mem, width, height, true))
{
- LogNT::getInstance()->debug(TAG, "Screenshot failed!");
+ logger->debug(TAG, "Screenshot failed!");
free(mem);
return false;
}
}
catch ( Exception& error_ )
{
- LogNT::getInstance()->debug("MagickEncoder", "Libmagick: {}", error_.what());
+ logger->debug("MagickEncoder", "Libmagick: {}", error_.what());
return false;
}
SurfacesIterator si;
#if DEV
- LogNT::getInstance()->trace(TAG, "updateOrAddSurface, surfaces.length {}", surfaces.size());
+ logger->trace(TAG, "updateOrAddSurface, surfaces.length {}", surfaces.size());
dumpStyles();
#endif
cleanupOrphanedRefs();
#if DEV
- LogNT::getInstance()->trace(TAG, "After UOAS:");
+ logger->trace(TAG, "After UOAS:");
dumpStyles();
#endif
// OSDOVG-ROD-EXPERIMENT
- LogNT::getInstance()->trace(TAG, "EXPERIMENT - call doRender");
+ logger->trace(TAG, "EXPERIMENT - call doRender");
doRender();
}
void OsdVector::removeSurface(const SurfaceVector* surf)
{
std::lock_guard<std::mutex> lg(surfaces_mutex); // FIXME - Can block here on shutdown if a timer is fired just as the wrong time
- LogNT::getInstance()->trace("OsdVector-348", "EXPERIMENT - removeSurface");
+ logger->trace("OsdVector-348", "EXPERIMENT - removeSurface");
for (auto i = surfaces.begin(); i != surfaces.end(); i++)
{
if (i->surface == surf)
}
tvmedias_loaded.erase(ref);
- // LogNT::getInstance()->debug(TAG, "TVMedia removeLoadIndexRef {} {:#x}",tvmedias_load.size(),ref);
+ // logger->debug(TAG, "TVMedia removeLoadIndexRef {} {:#x}",tvmedias_load.size(),ref);
tvmedias_load.erase(tvmedias_load_inv[ref]);
tvmedias_load_inv.erase(ref);
for(i = drawstyleHandles.begin(); i != drawstyleHandles.end(); i++)
{
const DrawStyle* test = &(i->first);
- LogNT::getInstance()->debug(TAG, "DumpStyles: {} {}", (void*)test , i->second);
+ logger->debug(TAG, "DumpStyles: {} {}", (void*)test , i->second);
}
std::map<VectorHandle, int>::iterator i2;
for (i2 = drawstyleHandlesRefCounts.begin(); i2 != drawstyleHandlesRefCounts.end(); i2++)
{
- LogNT::getInstance()->debug(TAG, "DumpStylesRef: {} {}", i2->first, i2->second);
+ logger->debug(TAG, "DumpStylesRef: {} {}", i2->first, i2->second);
}
}
#endif
LoadIndex loadindex = 0;
surfaces_mutex.lock();
- if (tvmedias.find(tvmedia) == tvmedias.end())
+ if (tvmedias.find(tvmedia) == tvmedias.end()) // if not found, return a loadIndex from loadTVMedia(tvmedia)
{
loadindex = loadTVMedia(tvmedia);
}
- else
+ else // if found, return a real imageIndex. incImageRef(image_handle). EXCEPT: If it's not found in images_ref (???) in which case do same as above.
{
image_handle = tvmedias[tvmedia];
return loadindex;
}
-LoadIndex OsdVector::loadTVMedia(TVMediaInfo& tvmedia)
+LoadIndex OsdVector::loadTVMedia(TVMediaInfo& tvmedia) // insert a tvmedia for loading
{
LoadIndex index = 0;
- if (tvmedias_load.find(tvmedia) == tvmedias_load.end())
+ if (tvmedias_load.find(tvmedia) == tvmedias_load.end()) // if not found in tvmedias_load
{
switch (tvmedia.getType())
{
//Beware for thread safety
ImageIndex image_index = 0;
- LogNT::getInstance()->debug(TAG, "TVMedia Picture for request id {:#x} arrived {:#x}", index, imageIndex);
+ logger->debug(TAG, "TVMedia Picture for load-id {:#x} arrived index {:#x}", index, imageIndex);
surfaces_mutex.lock();
TVMediaInfo tvmedia = tvmedias_load_inv[index];
{
case Message::NEW_PICTURE:
{
- //LogNT::getInstance()->debug(TAG, "TVMedia NEW_PICTURE");
+ //logger->debug(TAG, "TVMedia NEW_PICTURE");
informPicture(m->tag, reinterpret_cast<ImageIndex>(m->data));
break;
}
case Message::NEW_PICTURE_STATIC:
{
- //LogNT::getInstance()->debug(TAG, "TVMedia NEW_PICTURE {:#x} {:#x}", m->tag, m->parameter);
+ //logger->debug(TAG, "TVMedia NEW_PICTURE {:#x} {:#x}", m->tag, m->parameter);
informPicture(static_cast<unsigned long long>(m->tag) << 32LL, reinterpret_cast<ImageIndex>(m->data));
break;
}
while (itty != decoders.end())
{
- if ((*itty)->getDecodedPicture(pictinf))
+ if ((*itty)->getDecodedPicture(pictinf)) // FIXME somewhere around here?, or in getDecodedPicture, try SA optimisation
{
todos = true;
osdvector->createPicture(pictinf);
#include "staticartwork.h"
#include "surfacevector.h"
+const static char* TAG = "SurfaceVector";
+
SurfaceVector::SurfaceVector(OsdVector* vosd)
{
+ logger = LogNT::getInstance();
osd = vosd;
commands.reserve(2048);
}
if (image)
{
- //Log::getInstance()->log("SurfaceVector", Log::DEBUG, "TVMedia Add instru image %d %d", load_index,image);
+ logger->trace(TAG, "drawTVMedia: i=true, Add instr PaintImage load_index={} image={}", load_index, image);
commands.push_back(SVGCommand::PaintImage(x, y, width, height, image, 0, corner));
}
else
{
-
+ logger->trace(TAG, "drawTVMedia: i=false, Add instr PaintImageLoading {} {}", load_index, image);
commands.push_back(SVGCommand::PaintImageLoading(load_index, x, y, width, height, corner));
- //Log::getInstance()->log("SurfaceVector", Log::DEBUG, "TVMedia Add instru image loading %d %d", load_index,image);
}
command_mutex.unlock();