Dirac - A Video Codec

Created by the British Broadcasting Corporation.


transform_byteio.h
Go to the documentation of this file.
1/* ***** BEGIN LICENSE BLOCK *****
2*
3* $Id: transform_byteio.h,v 1.2 2008/01/31 11:25:15 tjdwave Exp $ $Name: Dirac_1_0_2 $
4*
5* Version: MPL 1.1/GPL 2.0/LGPL 2.1
6*
7* The contents of this file are subject to the Mozilla Public License
8* Version 1.1 (the "License"); you may not use this file except in compliance
9* with the License. You may obtain a copy of the License at
10* http://www.mozilla.org/MPL/
11*
12* Software distributed under the License is distributed on an "AS IS" basis,
13* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
14* the specific language governing rights and limitations under the License.
15*
16* The Original Code is BBC Research and Development code.
17*
18* The Initial Developer of the Original Code is the British Broadcasting
19* Corporation.
20* Portions created by the Initial Developer are Copyright (C) 2004.
21* All Rights Reserved.
22*
23* Contributor(s): Anuradha Suraparaju (Original Author)
24* Andrew Kennedy
25*
26* Alternatively, the contents of this file may be used under the terms of
27* the GNU General Public License Version 2 (the "GPL"), or the GNU Lesser
28* Public License Version 2.1 (the "LGPL"), in which case the provisions of
29* the GPL or the LGPL are applicable instead of those above. If you wish to
30* allow use of your version of this file only under the terms of the either
31* the GPL or LGPL and not to allow others to use your version of this file
32* under the MPL, indicate your decision by deleting the provisions above
33* and replace them with the notice and other provisions required by the GPL
34* or LGPL. If you do not delete the provisions above, a recipient may use
35* your version of this file under the terms of any one of the MPL, the GPL
36* or the LGPL.
37* ***** END LICENSE BLOCK ***** */
38
42#ifndef TRANSFORM_BYTEIO_H
43#define TRANSFORM_BYTEIO_H
44
45// DIRAC INCLUDES
46#include <libdirac_common/common.h> // EncParams
47
48//LOCAL INCLUDES
49#include <libdirac_byteio/byteio.h> // Parent class
50#include <libdirac_byteio/component_byteio.h> // Contains tranform-component
51
52
53namespace dirac
54{
55
59 class TransformByteIO : public ByteIO
60 {
61 public:
62
69 CodecParams& c_params);
70
78 CodecParams& c_params);
79
84
89 void CollateByteStats(DiracByteStats& dirac_byte_stats);
90
94 void Output();
95
99 void Input();
100
101
105 virtual const std::string GetBytes();
106
110 int GetSize() const;
111
116 void AddComponent(ComponentByteIO *component_byteio);
117
118 protected:
119
120
121 private:
122
127
132
137
138 /***
139 * Transform Component data
140 */
141 std::vector<ComponentByteIO *> m_component_list;
142 };
143
144} // namespace dirac
145
146#endif
Definition of class SequenceHeaderByteIO.
Definition accessunit_byteio.h:52
ByteIO(bool new_stream=true)
Default constructor.
Picture component in Dirac bytestream format.
Definition component_byteio.h:59
Class DiracByteStats - for collecting statistics on aspects of the Dirac byte-stream.
Definition dirac_byte_stats.h:71
CodecParams m_default_cparams
Default Codec params - EncParams for Output and DecParams for input.
Definition transform_byteio.h:136
virtual const std::string GetBytes()
Get string containing coded bytes.
TransformByteIO(PictureParams &fparams, CodecParams &c_params)
Output Constructor.
virtual ~TransformByteIO()
Destructor.
TransformByteIO(ByteIO &byte_io, PictureParams &fparams, CodecParams &c_params)
Input Constructor.
void CollateByteStats(DiracByteStats &dirac_byte_stats)
Gathers byte stats on the transform data.
void Input()
Outputs sequence information to Dirac byte-format.
std::vector< ComponentByteIO * > m_component_list
Definition transform_byteio.h:141
CodecParams & m_cparams
Codec params - EncParams for Output and DecParams for input.
Definition transform_byteio.h:131
void AddComponent(ComponentByteIO *component_byteio)
Adds a Picture-component in Dirac-bytestream format.
int GetSize() const
Return the size.
PictureParams & m_fparams
Sequence paramters for intput/output.
Definition transform_byteio.h:126
void Output()
Outputs sequence information to Dirac byte-format.
Parameters for initialising picture class objects.
Definition common.h:533
Parameters common to coder and decoder operation.
Definition common.h:1099

© 2004 British Broadcasting Corporation. Dirac code licensed under the Mozilla Public License (MPL) Version 1.1.
HTML documentation generated by Dimitri van Heesch's excellent Doxygen tool.