]> git.sesse.net Git - vlc/blobdiff - mozilla/control/npolibvlc.h
Removes trailing spaces. Removes tabs.
[vlc] / mozilla / control / npolibvlc.h
index e0346fcf39db545133c2c54eeb7f4010ca4980be..034c0847ce3781ffea3210c0236e824d153140f1 100755 (executable)
@@ -1,8 +1,7 @@
 /*****************************************************************************\r
- * vlc.h: a VLC plugin for Mozilla\r
+ * npolibvlc.h: official Javascript APIs\r
  *****************************************************************************\r
- * Copyright (C) 2002-2005 the VideoLAN team\r
- * $Id: vlcruntime.h 14466 2006-02-22 23:34:54Z dionoea $\r
+ * Copyright (C) 2002-2006 the VideoLAN team\r
  *\r
  * Authors: Damien Fouilleul <damien.fouilleul@laposte.net>\r
  *\r
 /*\r
 ** defined runtime script objects\r
 */\r
+#include <vlc/libvlc.h>\r
 \r
 #include "nporuntime.h"\r
 \r
 class LibvlcRootNPObject: public RuntimeNPObject\r
 {\r
-public:\r
-    LibvlcRootNPObject(NPP instance, const NPClass *aClass);\r
-    virtual ~LibvlcRootNPObject();\r
-\r
 protected:\r
     friend class RuntimeNPClass<LibvlcRootNPObject>;\r
 \r
+    LibvlcRootNPObject(NPP instance, const NPClass *aClass) :\r
+        RuntimeNPObject(instance, aClass),\r
+    audioObj(NULL),\r
+    inputObj(NULL),\r
+    logObj(NULL),\r
+    playlistObj(NULL),\r
+    videoObj(NULL) {};\r
+\r
+    virtual ~LibvlcRootNPObject();\r
+\r
     static const int propertyCount;\r
     static const NPUTF8 * const propertyNames[];\r
 \r
-    InvokeResult getProperty(int index, NPVariant *result);\r
+    InvokeResult getProperty(int index, NPVariant &result);\r
 \r
     static const int methodCount;\r
     static const NPUTF8 * const methodNames[];\r
 \r
+    InvokeResult invoke(int index, const NPVariant *args, uint32_t argCount, NPVariant &result);\r
+\r
+private:\r
     NPObject *audioObj;\r
     NPObject *inputObj;\r
+    NPObject *logObj;\r
     NPObject *playlistObj;\r
     NPObject *videoObj;\r
 };\r
 \r
 class LibvlcAudioNPObject: public RuntimeNPObject\r
 {\r
-public:\r
+protected:\r
     LibvlcAudioNPObject(NPP instance, const NPClass *aClass) :\r
         RuntimeNPObject(instance, aClass) {};\r
     virtual ~LibvlcAudioNPObject() {};\r
 \r
-protected:\r
     friend class RuntimeNPClass<LibvlcAudioNPObject>;\r
 \r
     static const int propertyCount;\r
     static const NPUTF8 * const propertyNames[];\r
 \r
-    InvokeResult getProperty(int index, NPVariant *result);\r
-    InvokeResult setProperty(int index, const NPVariant *value);\r
+    InvokeResult getProperty(int index, NPVariant &result);\r
+    InvokeResult setProperty(int index, const NPVariant &value);\r
 \r
     static const int methodCount;\r
     static const NPUTF8 * const methodNames[];\r
 \r
-    InvokeResult invoke(int index, const NPVariant *args, uint32_t argCount, NPVariant *result);\r
+    InvokeResult invoke(int index, const NPVariant *args, uint32_t argCount, NPVariant &result);\r
 };\r
 \r
 class LibvlcInputNPObject: public RuntimeNPObject\r
 {\r
-public:\r
+protected:\r
+    friend class RuntimeNPClass<LibvlcInputNPObject>;\r
+\r
     LibvlcInputNPObject(NPP instance, const NPClass *aClass) :\r
         RuntimeNPObject(instance, aClass) {};\r
-       \r
+\r
     virtual ~LibvlcInputNPObject() {};\r
 \r
+    static const int propertyCount;\r
+    static const NPUTF8 * const propertyNames[];\r
+\r
+    InvokeResult getProperty(int index, NPVariant &result);\r
+    InvokeResult setProperty(int index, const NPVariant &value);\r
+\r
+    static const int methodCount;\r
+    static const NPUTF8 * const methodNames[];\r
+};\r
+\r
+class LibvlcMessageNPObject: public RuntimeNPObject\r
+{\r
+public:\r
+    void setMessage(struct libvlc_log_message_t &msg)\r
+    {\r
+        _msg = msg;\r
+    };\r
+\r
 protected:\r
-    friend class RuntimeNPClass<LibvlcInputNPObject>;\r
+    friend class RuntimeNPClass<LibvlcMessageNPObject>;\r
+\r
+    LibvlcMessageNPObject(NPP instance, const NPClass *aClass) :\r
+        RuntimeNPObject(instance, aClass) {};\r
+\r
+    virtual ~LibvlcMessageNPObject() {};\r
 \r
     static const int propertyCount;\r
     static const NPUTF8 * const propertyNames[];\r
 \r
-    InvokeResult getProperty(int index, NPVariant *result);\r
-    InvokeResult setProperty(int index, const NPVariant *value);\r
+    InvokeResult getProperty(int index, NPVariant &result);\r
 \r
     static const int methodCount;\r
     static const NPUTF8 * const methodNames[];\r
+\r
+private:\r
+    struct libvlc_log_message_t _msg;\r
 };\r
 \r
-class LibvlcPlaylistNPObject: public RuntimeNPObject\r
+class LibvlcLogNPObject;\r
+\r
+class LibvlcMessageIteratorNPObject: public RuntimeNPObject\r
 {\r
-public:\r
-    LibvlcPlaylistNPObject(NPP instance, const NPClass *aClass) :\r
+protected:\r
+    friend class RuntimeNPClass<LibvlcMessageIteratorNPObject>;\r
+\r
+    LibvlcMessageIteratorNPObject(NPP instance, const NPClass *aClass);\r
+    virtual ~LibvlcMessageIteratorNPObject();\r
+\r
+    static const int propertyCount;\r
+    static const NPUTF8 * const propertyNames[];\r
+\r
+    InvokeResult getProperty(int index, NPVariant &result);\r
+\r
+    static const int methodCount;\r
+    static const NPUTF8 * const methodNames[];\r
+\r
+    InvokeResult invoke(int index, const NPVariant *args, uint32_t argCount, NPVariant &result);\r
+\r
+private:\r
+    libvlc_log_iterator_t*  _p_iter;\r
+};\r
+\r
+class LibvlcMessagesNPObject: public RuntimeNPObject\r
+{\r
+protected:\r
+    friend class RuntimeNPClass<LibvlcMessagesNPObject>;\r
+\r
+    LibvlcMessagesNPObject(NPP instance, const NPClass *aClass) :\r
+        RuntimeNPObject(instance, aClass) {};\r
+\r
+    virtual ~LibvlcMessagesNPObject() {};\r
+\r
+    static const int propertyCount;\r
+    static const NPUTF8 * const propertyNames[];\r
+\r
+    InvokeResult getProperty(int index, NPVariant &result);\r
+\r
+    static const int methodCount;\r
+    static const NPUTF8 * const methodNames[];\r
+\r
+    InvokeResult invoke(int index, const NPVariant *args, uint32_t argCount, NPVariant &result);\r
+};\r
+\r
+class LibvlcLogNPObject: public RuntimeNPObject\r
+{\r
+protected:\r
+    friend class RuntimeNPClass<LibvlcLogNPObject>;\r
+\r
+    LibvlcLogNPObject(NPP instance, const NPClass *aClass) :\r
+    RuntimeNPObject(instance, aClass),\r
+    messagesObj(NULL) {};\r
+\r
+    virtual ~LibvlcLogNPObject();\r
+\r
+    static const int propertyCount;\r
+    static const NPUTF8 * const propertyNames[];\r
+\r
+    InvokeResult getProperty(int index, NPVariant &result);\r
+    InvokeResult setProperty(int index, const NPVariant &value);\r
+\r
+    static const int methodCount;\r
+    static const NPUTF8 * const methodNames[];\r
+\r
+private:\r
+    NPObject* messagesObj;\r
+};\r
+\r
+class LibvlcPlaylistItemsNPObject: public RuntimeNPObject\r
+{\r
+protected:\r
+    friend class RuntimeNPClass<LibvlcPlaylistItemsNPObject>;\r
+\r
+    LibvlcPlaylistItemsNPObject(NPP instance, const NPClass *aClass) :\r
         RuntimeNPObject(instance, aClass) {};\r
-    virtual ~LibvlcPlaylistNPObject() {};\r
+    virtual ~LibvlcPlaylistItemsNPObject() {};\r
 \r
+    static const int propertyCount;\r
+    static const NPUTF8 * const propertyNames[];\r
+\r
+    InvokeResult getProperty(int index, NPVariant &result);\r
+\r
+    static const int methodCount;\r
+    static const NPUTF8 * const methodNames[];\r
+\r
+    InvokeResult invoke(int index, const NPVariant *args, uint32_t argCount, NPVariant &result);\r
+};\r
+\r
+class LibvlcPlaylistNPObject: public RuntimeNPObject\r
+{\r
 protected:\r
     friend class RuntimeNPClass<LibvlcPlaylistNPObject>;\r
 \r
+    LibvlcPlaylistNPObject(NPP instance, const NPClass *aClass) :\r
+    RuntimeNPObject(instance, aClass),\r
+    playlistItemsObj(NULL) {};\r
+    \r
+    virtual ~LibvlcPlaylistNPObject();\r
+\r
     static const int propertyCount;\r
     static const NPUTF8 * const propertyNames[];\r
 \r
-    InvokeResult getProperty(int index, NPVariant *result);\r
+    InvokeResult getProperty(int index, NPVariant &result);\r
 \r
     static const int methodCount;\r
     static const NPUTF8 * const methodNames[];\r
 \r
-    InvokeResult invoke(int index, const NPVariant *args, uint32_t argCount, NPVariant *result);\r
+    InvokeResult invoke(int index, const NPVariant *args, uint32_t argCount, NPVariant &result);\r
+\r
+    void parseOptions(const NPString &s, int *i_options, char*** ppsz_options);\r
+    void parseOptions(NPObject *obj, int *i_options, char*** ppsz_options);\r
+\r
+private:\r
+    NPObject*  playlistItemsObj;\r
 };\r
 \r
 class LibvlcVideoNPObject: public RuntimeNPObject\r
 {\r
-public:\r
+protected:\r
+    friend class RuntimeNPClass<LibvlcVideoNPObject>;\r
+\r
     LibvlcVideoNPObject(NPP instance, const NPClass *aClass) :\r
         RuntimeNPObject(instance, aClass) {};\r
     virtual ~LibvlcVideoNPObject() {};\r
 \r
-protected:\r
-    friend class RuntimeNPClass<LibvlcVideoNPObject>;\r
-\r
     static const int propertyCount;\r
     static const NPUTF8 * const propertyNames[];\r
 \r
-    InvokeResult getProperty(int index, NPVariant *result);\r
-    InvokeResult setProperty(int index, const NPVariant *value);\r
+    InvokeResult getProperty(int index, NPVariant &result);\r
+    InvokeResult setProperty(int index, const NPVariant &value);\r
 \r
     static const int methodCount;\r
     static const NPUTF8 * const methodNames[];\r
 \r
-    InvokeResult invoke(int index, const NPVariant *args, uint32_t argCount, NPVariant *result);\r
-\r
+    InvokeResult invoke(int index, const NPVariant *args, uint32_t argCount, NPVariant &result);\r
 };\r
-\r