HBufC* utf8ToUnicode( const char* utf8 ) {
    // Length should be right if english and a bit too long if not.
    HBufC* retVal = HBufC::New( strlen( utf8 ) + 1 );
    TPtr retPtr( retVal->Des() );
    ConvertUTF8ToUnicode( reinterpret_cast<const unsigned char*>(utf8),
                         retPtr );
    return retVal;
 }
Пример #2
0
std::unique_ptr<State> MarkState::handle(CVideoLoader & loader, CAbstractAlgorithm & algorithm, std::unique_ptr<CMeasuredData> &) {
    cv::Mat frame;
    cv::namedWindow(algorithm.m_winName, CV_WINDOW_AUTOSIZE);
    CPatternController::getInstance().setWinName(algorithm.m_winName);
    std::unique_ptr<State> retPtr( new TrackState() );
    std::vector<std::pair<cv::Point, cv::Mat>> imgVec = CPatternController::getInstance().getImgVec();
    while(0 == imgVec.size()) {
        if(false == CPatternController::getInstance().isMarkerActive()) {
            frame = loader.getNextFrame();
            CPatternController::getInstance().setFrame( frame );
            cv::imshow(algorithm.m_winName, frame);
        }
        else {
            cv::imshow(algorithm.m_winName, CPatternController::getInstance().getFrame() );
        }

        imgVec = CPatternController::getInstance().getImgVec(); 
		if(true == loader.interval(20)) break;
    }
    return retPtr;
}
 template<typename Data> static PrivatePtr<Data> getPrivate(Data &arg)
 {
     PrivatePtr<Data> retPtr(new Data);
     retPtr->Swap(arg, Int2Type<Data::serverSendsAnswer>());
     return retPtr;
 }