*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
#ifndef __UTILS_H__
#include <vector>
// utilities
-extern char *CStrFromBSTR(int codePage, BSTR bstr);
-extern BSTR BSTRFromCStr(int codePage, const char *s);
+extern char *CStrFromBSTR(UINT codePage, BSTR bstr);
+extern BSTR BSTRFromCStr(UINT codePage, LPCSTR s);
+
+extern char *CStrFromGUID(REFGUID clsid);
// properties
extern HRESULT GetObjectProperty(LPUNKNOWN object, DISPID dispID, VARIANT& v);
// properties
extern HDC CreateDevDC(DVTARGETDEVICE *ptd);
+extern void DPFromHimetric(HDC hdc, LPPOINT pt, int count);
+extern void HimetricFromDP(HDC hdc, LPPOINT pt, int count);
+
// enumeration
template<class T> class VLCEnum : IUnknown
this->_riid = e._riid;
this->_v = e._v;
this->_i = e._i;
+ return this;
};
template<class T>
STDMETHODIMP VLCEnum<T>::QueryInterface(REFIID riid, void **ppv)
{
- if( NULL == ppv ) return E_POINTER;
+ if( NULL == ppv )
+ return E_POINTER;
if( (IID_IUnknown == riid)
- && ( _riid == riid) ) {
+ || (_riid == riid) )
+ {
AddRef();
*ppv = reinterpret_cast<LPVOID>(this);
return NOERROR;
}
+ // standalone object
return E_NOINTERFACE;
};