Gnash  0.8.11dev
MediaHandlerHaiku.h
Go to the documentation of this file.
1 // MediaHandlerHaiku.h: Haiku media kit media handler, for Gnash
2 //
3 // Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012
4 // Free Software Foundation, Inc.
5 //
6 // This program is free software; you can redistribute it and/or modify
7 // it under the terms of the GNU General Public License as published by
8 // the Free Software Foundation; either version 3 of the License, or
9 // (at your option) any later version.
10 //
11 // This program is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
15 //
16 // You should have received a copy of the GNU General Public License
17 // along with this program; if not, write to the Free Software
18 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19 
20 #ifndef GNASH_MEDIAHANDLERHAIKU_H
21 #define GNASH_MEDIAHANDLERHAIKU_H
22 
23 #include "MediaHandler.h" // for inheritance
24 
25 #include <vector>
26 #include <memory>
27 
28 namespace gnash {
29 namespace media {
30 
32 //
40 namespace haiku {
41 
44 {
45 public:
46 
47  virtual std::string description() const {
48  return "Haiku Media Handler";
49  }
50 
51  virtual std::unique_ptr<MediaParser>
52  createMediaParser(std::shared_ptr<IOChannel> stream);
53 
54  virtual std::unique_ptr<VideoDecoder>
55  createVideoDecoder(const VideoInfo& info);
56 
57  virtual std::unique_ptr<VideoConverter>
59  ImgBuf::Type4CC dstFormat);
60 
61  virtual std::unique_ptr<AudioDecoder>
62  createAudioDecoder(const AudioInfo& info);
63 
64 // virtual size_t getInputPaddingSize() const;
65 
66  virtual VideoInput* getVideoInput(size_t index);
67 
68  virtual AudioInput* getAudioInput(size_t index);
69 
70  virtual void cameraNames(std::vector<std::string>& names) const;
71 
72 };
73 
74 
75 } // gnash.media.haiku namespace
76 } // gnash.media namespace
77 } // namespace gnash
78 
79 #endif
A class representing a single AudioInput device.
Definition: AudioInput.h:35
virtual std::unique_ptr< AudioDecoder > createAudioDecoder(const AudioInfo &info)
Create an AudioDecoder for decoding what&#39;s specified in the AudioInfo.
Definition: MediaHandlerHaiku.cpp:96
std::uint32_t Type4CC
Definition: VideoConverter.h:45
virtual AudioInput * getAudioInput(size_t index)
Definition: MediaHandlerHaiku.cpp:126
Information about a video stream.
Definition: MediaParser.h:322
virtual std::string description() const
Return a description of this media handler.
Definition: MediaHandlerHaiku.h:47
Anonymous namespace for callbacks, local functions, event handlers etc.
Definition: dbus_ext.cpp:40
virtual std::unique_ptr< VideoDecoder > createVideoDecoder(const VideoInfo &info)
Create a VideoDecoder for decoding what&#39;s specified in the VideoInfo.
Definition: MediaHandlerHaiku.cpp:69
char ** names[EV_MAX+1]
Definition: evtest.c:357
virtual VideoInput * getVideoInput(size_t index)
Return a VideoInput.
Definition: MediaHandlerHaiku.cpp:132
This is the interface for video input devices.
Definition: VideoInput.h:47
The MediaHandler class acts as a factory to provide parser and decoders.
Definition: MediaHandler.h:69
virtual std::unique_ptr< VideoConverter > createVideoConverter(ImgBuf::Type4CC srcFormat, ImgBuf::Type4CC dstFormat)
Create an VideoConverter for converting between color spaces.
Definition: MediaHandlerHaiku.cpp:76
virtual std::unique_ptr< MediaParser > createMediaParser(std::shared_ptr< IOChannel > stream)
Definition: MediaHandlerHaiku.cpp:44
Information about an audio stream.
Definition: MediaParser.h:236
Haiku based MediaHandler.
Definition: MediaHandlerHaiku.h:43
virtual void cameraNames(std::vector< std::string > &names) const
Return a list of available cameras.
Definition: MediaHandlerHaiku.cpp:138