gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] gnash/server/swf tag_loaders.cpp tag_loaders.h


From: Vitaly Alexeev
Subject: [Gnash-commit] gnash/server/swf tag_loaders.cpp tag_loaders.h
Date: Fri, 27 Oct 2006 14:31:18 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Vitaly Alexeev <alexeev>        06/10/27 14:31:18

Modified files:
        server/swf     : tag_loaders.cpp tag_loaders.h 

Log message:
        videostream implementation

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/server/swf/tag_loaders.cpp?cvsroot=gnash&r1=1.53&r2=1.54
http://cvs.savannah.gnu.org/viewcvs/gnash/server/swf/tag_loaders.h?cvsroot=gnash&r1=1.10&r2=1.11

Patches:
Index: tag_loaders.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/swf/tag_loaders.cpp,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -b -r1.53 -r1.54
--- tag_loaders.cpp     7 Oct 2006 14:20:27 -0000       1.53
+++ tag_loaders.cpp     27 Oct 2006 14:31:18 -0000      1.54
@@ -36,7 +36,7 @@
 //
 //
 
-/* $Id: tag_loaders.cpp,v 1.53 2006/10/07 14:20:27 tgc Exp $ */
+/* $Id: tag_loaders.cpp,v 1.54 2006/10/27 14:31:18 alexeev Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -77,6 +77,7 @@
 #include "execute_tag.h" // for do_action inheritance (DOACTION tag loader)
 #include "URL.h"
 #include "GnashException.h"
+#include "video_stream_def.h"
 
 namespace gnash {
 
@@ -1824,6 +1825,34 @@
 
 }
 
+void
+define_video_loader(stream* in, tag_type tag, movie_definition* m)
+{
+       assert(tag == SWF::DEFINEVIDEOSTREAM); // 60
+       uint16_t character_id = in->read_u16();
+
+       video_stream_definition* ch = new video_stream_definition;
+       ch->read(in, tag, m);
+
+       m->add_character(character_id, ch);
+
+}
+
+void
+video_loader(stream* in, tag_type tag, movie_definition* m)
+{
+       assert(tag == SWF::VIDEOFRAME); // 61
+
+       uint16_t character_id = in->read_u16();
+       character_def* chdef = m->get_character_def(character_id);
+
+       assert ( dynamic_cast<video_stream_definition*> (chdef) );
+       video_stream_definition* ch = static_cast<video_stream_definition*> 
(chdef);
+       assert(ch != NULL);
+
+       ch->read(in, tag, m);
+}
+
 
 
 

Index: tag_loaders.h
===================================================================
RCS file: /sources/gnash/gnash/server/swf/tag_loaders.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- tag_loaders.h       20 Sep 2006 06:10:24 -0000      1.10
+++ tag_loaders.h       27 Oct 2006 14:31:18 -0000      1.11
@@ -36,7 +36,7 @@
 //
 //
 
-/* $Id: tag_loaders.h,v 1.10 2006/09/20 06:10:24 nihilus Exp $ */
+/* $Id: tag_loaders.h,v 1.11 2006/10/27 14:31:18 alexeev Exp $ */
 
 #ifndef GNASH_SWF_TAG_LOADERS_H
 #define GNASH_SWF_TAG_LOADERS_H
@@ -146,7 +146,11 @@
 /// Load a SWF::SOUNDSTREAMBLOCK tag.
 void   sound_stream_block_loader(stream*, tag_type, movie_definition*);
 
+void
+define_video_loader(stream* in, tag_type tag, movie_definition* m);
 
+void
+video_loader(stream* in, tag_type tag, movie_definition* m);
 
 } // namespace gnash::SWF::tag_loaders
 } // namespace gnash::SWF




reply via email to

[Prev in Thread] Current Thread [Next in Thread]