2012-12-19 127 views
0

嘗試將相機預覽緩衝區渲染到BB10中的opengl渲染器(但與任何平臺相關)時出現問題。我的渲染器只是一個基本的Open GL渲染器,通過一個相對無限循環渲染云然而即時尋找相機預覽緩衝區發送從我的相機類(其中i實例我的渲染器)爲使QThread,信號和插槽

myThread = new QThread(); 
renderer = new BPRenderer(); 
renderer->moveToThread(myThread); 
connect(myThread, SIGNAL(started()), renderer, SLOT(run())); 
connect(this, SIGNAL(NewTexture(int)), renderer, SLOT(SetTextureFromRaw(unsigned char*))); 
myThread->start(); 

所以EMIT功能是:

emit this->NewTexture(camera->buf); 

因此,這是非常基本的,我知道它得到更新罰款。但似乎我可能在我的線程有問題,因爲儘管運行信號運行良好,我的settexturefromraw插槽永遠不會被觸發,我試圖將其設置爲本地相機功能,以檢查它不是相機(這個)功能,但那是工作很好,所以我確定它的settexturefromrawfunc。

如果有人有任何想法扔給我,因爲這已經讓我有一段時間了!乾杯

回答

0

檢查控制檯輸出(您可能需要SSH進入設備並執行「slog2info」)來查看信號是否實際連接。沒有看到代碼的其餘部分,很難確定,但我猜想NewTexture的參數不匹配。

在連接調用中,您正在連接到NewT​​exture(int)。當你發射它時,你正在調用這個 - > NewTexture(camera-> buf)。通過參數名稱,這看起來更像是一個指針。