Gnash  0.8.11dev
MovieFactory.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
3 // Free Software Foundation, Inc
4 //
5 // This program is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation; either version 3 of the License, or
8 // (at your option) any later version.
9 //
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
14 //
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software
17 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18 
19 
20 #ifndef GNASH_MOVIE_FACTORY_H
21 #define GNASH_MOVIE_FACTORY_H
22 
23 #include "dsodefs.h"
24 
25 #include <boost/intrusive_ptr.hpp>
26 #include <string>
27 #include <memory>
28 
29 namespace gnash {
30  class IOChannel;
31  class RunResources;
32  class movie_definition;
33  class URL;
34  class MovieLibrary;
35 }
36 
37 namespace gnash {
38 
40 {
41 public:
42 
44  //
84  static DSOEXPORT boost::intrusive_ptr<movie_definition> makeMovie(
85  const URL& url, const RunResources& runResources,
86  const char* real_url = nullptr, bool startLoaderThread = true,
87  const std::string* postdata = nullptr);
88 
90  //
113  static DSOEXPORT boost::intrusive_ptr<movie_definition> makeMovie(
114  std::unique_ptr<IOChannel> in, const std::string& url,
115  const RunResources& runResources, bool startLoaderThread);
116 
118  //
120  static DSOEXPORT void clear();
121 
123 };
124 
125 } // namespace gnash
126 
127 
128 #endif // GNASH_IMPL_H
129 
130 
131 // Local Variables:
132 // mode: C++
133 // indent-tabs-mode: t
134 // End:
Library of SWF movies indexed by URL strings.
Definition: MovieLibrary.h:37
Anonymous namespace for callbacks, local functions, event handlers etc.
Definition: dbus_ext.cpp:40
static DSOEXPORT void clear()
Clear the MovieFactory resources.
Definition: MovieFactory.cpp:157
static DSOEXPORT boost::intrusive_ptr< movie_definition > makeMovie(const URL &url, const RunResources &runResources, const char *real_url=nullptr, bool startLoaderThread=true, const std::string *postdata=nullptr)
Create a gnash::movie_definition from the given URL.
Definition: MovieFactory.cpp:109
Class to group together per-run and external resources for Gnash.
Definition: RunResources.h:53
static MovieLibrary movieLibrary
Definition: MovieFactory.h:122
#define DSOEXPORT
Definition: dsodefs.h:55
Definition: MovieFactory.h:39
std::string url
Definition: gnash.cpp:59
Uniform Resource Locator.
Definition: URL.h:34