19 #ifndef GNASH_SWF_IMPORTASSETSTAG_H
20 #define GNASH_SWF_IMPORTASSETSTAG_H
42 typedef std::pair<int, std::string>
Import;
62 for (Imports::const_iterator it = _imports.begin(),
e = _imports.end();
79 std::string source_url;
85 unsigned char import_version = 0;
90 boost::uint8_t reserved = in.
read_uint(8);
95 const boost::uint16_t count = in.
read_u16();
98 log_parse(
_(
" import: version = %u, source_url = %s (%s), "
99 "count = %d"), import_version, abs_url.str(), source_url,
104 boost::intrusive_ptr<movie_definition> source_movie;
110 log_error(
_(
"Exception: %s"), e.what());
115 log_error(
_(
"can't import movie from url %s"), abs_url.str());
121 if (source_movie == &m) {
123 log_swferror(
_(
"Movie attempts to import symbols from "
130 for (
size_t i = 0;
i < count; ++
i)
133 const boost::uint16_t
id = in.
read_u16();
138 std::string symbolName;
141 log_parse(
_(
" import: id = %d, name = %s"),
id, symbolName);
143 _imports.push_back(std::make_pair(
id, symbolName));
Client program's interface to the definition of a movie or sprite.
Definition: movie_definition.h:95
std::pair< int, std::string > Import
Definition: ImportAssetsTag.h:42
A MovieClip is a container for DisplayObjects.
Definition: MovieClip.h:83
void read_string(std::string &to)
Reads a null-terminated string from the given file and assigns it to the given std::string, overriding any previous value of it.
Definition: SWFStream.cpp:403
TagType
SWF tag types. Symbolic names copied from Ming.
Definition: SWF.h:30
#define UNUSED(x)
Definition: utility.h:113
static DSOEXPORT boost::intrusive_ptr< movie_definition > makeMovie(const URL &url, const RunResources &runResources, const char *real_url=0, bool startLoaderThread=true, const std::string *postdata=0)
Create a gnash::movie_definition from the given URL.
Definition: MovieFactory.cpp:109
A top-level, standalone Movie that can be loaded and played.
Definition: Movie.h:46
Anonymous namespace for callbacks, local functions, event handlers etc.
Definition: dbus_ext.cpp:40
#define IF_VERBOSE_MALFORMED_SWF(x)
Definition: log.h:390
Definition: ImportAssetsTag.h:38
boost::uint16_t read_u16()
Read a aligned unsigned 16-bit value from the stream.
Definition: SWFStream.cpp:340
#define IF_VERBOSE_PARSE(x)
Definition: log.h:364
Control tags are swf tags that control the operation of the movie.
Definition: ControlTag.h:43
virtual void addCharacter(boost::uint16_t)
Add a character to the list of known characters.
Definition: Movie.h:97
Definition: GnashKey.h:164
virtual Movie * get_root() const
Return the relative root of this DisplayObject.
Definition: MovieClip.cpp:2054
Definition: GnashKey.h:166
#define _(String)
Definition: log.h:44
Class to group together per-run and external resources for Gnash.
Definition: RunResources.h:43
virtual void executeState(MovieClip *m, DisplayList &) const
Execute an ImportAssetsTag.
Definition: ImportAssetsTag.h:60
unsigned read_uint(unsigned short bitcount)
Reads a bit-packed unsigned integer from the stream and returns it. The given bitcount determines the...
Definition: SWFStream.cpp:103
virtual void importResources(boost::intrusive_ptr< movie_definition >, const Imports &)
Import resources.
Definition: movie_definition.h:176
const StreamProvider & streamProvider() const
Get a StreamProvider instance.
Definition: RunResources.h:66
static void loader(SWFStream &in, TagType tag, movie_definition &m, const RunResources &r)
Definition: ImportAssetsTag.h:45
Definition: GnashKey.h:162
Definition: GnashKey.h:155
Definition: GnashKey.h:151
Definition: GnashKey.h:159
const URL & baseURL() const
The base URL that should be used to resolve all relative URLs.
Definition: StreamProvider.h:117
std::vector< Import > Imports
Definition: ImportAssetsTag.h:43
virtual void addControlTag(boost::intrusive_ptr< SWF::ControlTag >)
Add an ControlTag to this movie_definition's playlist.
Definition: movie_definition.h:273
A list of on-stage DisplayObjects, ordered by depth.
Definition: DisplayList.h:64
Definition: GnashKey.h:331
SWF stream wrapper class.
Definition: SWFStream.h:58
Uniform Resource Locator.
Definition: URL.h:34
Top-level gnash exception.
Definition: GnashException.h:30
void ensureBytes(unsigned long needed)
Ensure the requested number of bytes are available for an aligned read in the currently opened tag...
Definition: SWFStream.cpp:51