I am attempting to port some code from a a visual studio project to mingw.
The compiler is pointing out an undefined reference error in which it assumes the second parameter is a wchar_t const*
. I have both _UNICODE
and
UNICODE
defined in my project
undefined reference to `CBaseVideoRenderer::CBaseVideoRenderer(_GUID const&, wchar_t const*, IUnknown*, long*)'
Here is the code I am using
The constructor of the base class is this
CBaseVideoRenderer(REFCLSID RenderClass,LPCTSTR pName, LPUNKNOWN pUnk,
HRESULT *phr);
This is how its being initiated in the base class
MemRenderer::MemRenderer(LPUNKNOWN ptr, HRESULT *hr, OutputBuffer *buffer)
: CBaseVideoRenderer(__uuidof(CLSID_MemRenderer), NAME("MemRenderer"), ptr, hr)
Now I am getting the error on the above statment saying
undefined reference to `CBaseVideoRenderer::CBaseVideoRenderer(_GUID const&, wchar_t const*, IUnknown*, long*)'
My question is why am I getting that error ? I looked up LPCTSTR and it seems to be a constant char pointer so I tried this too
MemRenderer::MemRenderer(LPUNKNOWN ptr, HRESULT *hr, OutputBuffer *buffer)
: CBaseVideoRenderer(__uuidof(CLSID_MemRenderer), "MemRenderer", ptr, hr)
However I get the error
error: no matching function for call to 'CBaseVideoRenderer::CBaseVideoRenderer(const GUID&, const char [12], IUnknown*&, HRESULT*&)'
buffer(buffer)
Any suggestions on how I can fix this issue ?