* Copyright (C) 2006 the VideoLAN team
*
* Authors: Damien Fouilleul <Damien.Fouilleul@laposte.net>
+ * Jean-Paul Saman <jpsaman _at_ m2x _dot_ nl>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
STDMETHODIMP put_mute(VARIANT_BOOL);
STDMETHODIMP get_volume(long*);
STDMETHODIMP put_volume(long);
+ STDMETHODIMP get_track(long*);
+ STDMETHODIMP put_track(long);
+ STDMETHODIMP get_channel(long*);
+ STDMETHODIMP put_channel(long);
STDMETHODIMP toggleMute();
-
+
protected:
HRESULT loadTypeInfo();
ITypeInfo* _p_typeinfo;
};
-
+
class VLCInput : public IVLCInput
{
public:
ITypeInfo* _p_typeinfo;
};
-
+
class VLCMessage: public IVLCMessage
{
public:
STDMETHODIMP get_name(BSTR *);
STDMETHODIMP get_header(BSTR *);
STDMETHODIMP get_message(BSTR *);
-
+
protected:
HRESULT loadTypeInfo();
struct libvlc_log_message_t _msg;
};
-
+
class VLCLog;
class VLCMessageIterator : public IVLCMessageIterator
// IVLCMessageIterator methods
STDMETHODIMP get_hasNext(VARIANT_BOOL*);
STDMETHODIMP next(IVLCMessage**);
-
+
protected:
HRESULT loadTypeInfo();
VLCLog* _p_vlclog;
libvlc_log_iterator_t* _p_iter;
};
-
+
class VLCMessages : public IVLCMessages
{
public:
STDMETHODIMP clear();
STDMETHODIMP get_count(long*);
STDMETHODIMP iterator(IVLCMessageIterator**);
-
+
protected:
HRESULT loadTypeInfo();
STDMETHODIMP get_messages(IVLCMessages**);
STDMETHODIMP get_verbosity(long *);
STDMETHODIMP put_verbosity(long);
-
+
protected:
HRESULT loadTypeInfo();
VLCMessages* _p_vlcmessages;
};
-
+
class VLCPlaylistItems : public IVLCPlaylistItems
{
public:
STDMETHODIMP get_count(long*);
STDMETHODIMP clear();
STDMETHODIMP remove(long);
-
+
protected:
HRESULT loadTypeInfo();
ITypeInfo* _p_typeinfo;
};
-
+
class VLCPlaylist : public IVLCPlaylist
{
public:
STDMETHODIMP clear();
STDMETHODIMP removeItem(long);
STDMETHODIMP get_items(IVLCPlaylistItems**);
-
+
protected:
HRESULT loadTypeInfo();
VLCPlaylistItems* _p_vlcplaylistitems;
};
-
+
class VLCVideo : public IVLCVideo
{
public:
STDMETHODIMP get_height(long*);
STDMETHODIMP get_aspectRatio(BSTR*);
STDMETHODIMP put_aspectRatio(BSTR);
+ STDMETHODIMP get_subtitle(long*);
+ STDMETHODIMP put_subtitle(long);
+ STDMETHODIMP get_crop(BSTR*);
+ STDMETHODIMP put_crop(BSTR);
+ STDMETHODIMP get_teletext(long*);
+ STDMETHODIMP put_teletext(long);
+ STDMETHODIMP takeSnapshot(LPPICTUREDISP*);
STDMETHODIMP toggleFullscreen();
-
+
protected:
HRESULT loadTypeInfo();
ITypeInfo* _p_typeinfo;
};
-
+
class VLCControl2 : public IVLCControl2
{
-
public:
VLCControl2(VLCPlugin *p_instance);
STDMETHODIMP put_Visible(VARIANT_BOOL visible);
STDMETHODIMP get_Volume(long *volume);
STDMETHODIMP put_Volume(long volume);
+ STDMETHODIMP get_BackColor(OLE_COLOR *backcolor);
+ STDMETHODIMP put_BackColor(OLE_COLOR backcolor);
STDMETHODIMP get_audio(IVLCAudio**);
STDMETHODIMP get_input(IVLCInput**);
VLCPlaylist* _p_vlcplaylist;
VLCVideo* _p_vlcvideo;
};
-
-#endif
+#endif