diff --git a/app/CalypAppModuleIf.cpp b/app/CalypAppModuleIf.cpp index d595ca1..d7dadb8 100644 --- a/app/CalypAppModuleIf.cpp +++ b/app/CalypAppModuleIf.cpp @@ -214,8 +214,10 @@ bool CalypAppModuleIf::process() void CalypAppModuleIf::show() { +#ifdef CALYP_THREADED_MODULES if( m_canceling ) return; +#endif switch( m_pcModule->m_iModuleType ) { case ClpModuleType::FrameProcessing: { diff --git a/app/CalypAppModuleIf.h b/app/CalypAppModuleIf.h index 3f58b37..6fe7bce 100644 --- a/app/CalypAppModuleIf.h +++ b/app/CalypAppModuleIf.h @@ -49,8 +49,6 @@ class QDockWidget; class CalypStream; class CalypFrame; -#define CLP_MODULE_MAX_NUM_FRAMES 5 - class VideoSubWindow; class ModuleSubWindow; @@ -60,7 +58,6 @@ class CalypAppModuleIf : std::enable_shared_from_this, #else public QObject #endif - { friend class ModulesHandle; friend class ModuleHandleDock; diff --git a/lib/CalypFrame.cpp b/lib/CalypFrame.cpp index 95af05c..2d988a3 100644 --- a/lib/CalypFrame.cpp +++ b/lib/CalypFrame.cpp @@ -1280,6 +1280,12 @@ bool CalypFrame::toMat( cv::Mat& cvMat, bool convertToGray, bool scale, unsigned case CLP_COLOR_YUV: cv::cvtColor( tmpMat, cvMat, cv::COLOR_YCrCb2RGB ); break; + case CLP_COLOR_RGB: + case CLP_COLOR_RGBA: + cvMat = tmpMat; + break; + default: + assert( false ); } } } diff --git a/lib/CalypOptions.cpp b/lib/CalypOptions.cpp index e820653..6b4e2f9 100644 --- a/lib/CalypOptions.cpp +++ b/lib/CalypOptions.cpp @@ -46,8 +46,6 @@ #include "config.h" #include "lib/CalypModuleIf.h" -using namespace std; - struct ParseFailure : public std::exception { std::string arg; @@ -189,7 +187,13 @@ private: */ CalypOptions& CalypOptions::operator()( const std::string& name, const std::string& desc ) { - addOption( std::make_unique( name, desc ) ); + addOptionInternal( std::make_unique( name, desc ) ); + return *this; +} + +CalypOptions& CalypOptions::addOption( const std::string& name, const std::string& desc ) +{ + addOptionInternal( std::make_unique( name, desc ) ); return *this; } @@ -201,14 +205,27 @@ CalypOptions& CalypOptions::operator()( const std::string& name, const std::stri template CalypOptions& CalypOptions::operator()( const std::string& name, T& storage, const std::string& desc ) { - addOption( std::make_unique>( name, storage, desc, std::string( "" ) ) ); + addOptionInternal( std::make_unique>( name, storage, desc, std::string( "" ) ) ); + return *this; +} +template +CalypOptions& CalypOptions::addOption( const std::string& name, T& storage, const std::string& desc ) +{ + addOptionInternal( std::make_unique>( name, storage, desc, std::string( "" ) ) ); return *this; } template CalypOptions& CalypOptions::operator()( const std::string& name, T& storage, const std::string& desc, const std::string& defaults ) { - addOption( std::make_unique>( name, storage, desc ) ); + addOptionInternal( std::make_unique>( name, storage, desc ) ); + return *this; +} + +template +CalypOptions& CalypOptions::addOption( const std::string& name, T& storage, const std::string& desc, const std::string& defaults ) +{ + addOptionInternal( std::make_unique>( name, storage, desc ) ); return *this; } @@ -270,15 +287,15 @@ CalypOptions& CalypOptions::addOptions() return *this; } -void CalypOptions::addOption( std::unique_ptr opt ) +void CalypOptions::addOptionInternal( std::unique_ptr opt ) { auto names = std::make_unique