Hauptseite   Klassenhierarchie   Alphabetische Liste   Übersicht   Auflistung der Dateien   Elementübersicht  

Codec_Info.h

00001 /***************************************************************************
00002                           codecinfo_entry.h  -  description
00003                              -------------------
00004     begin                : Fri Jan 18 2002
00005     copyright            : (C) 2002 by Christian Tusche
00006     email                : christian.tusche@stud.uni-goettingen.de
00007  ***************************************************************************/
00008 
00009 /***************************************************************************
00010  *                                                                         *
00011  *   This program is free software; you can redistribute it and/or modify  *
00012  *   it under the terms of the GNU General Public License as published by  *
00013  *   the Free Software Foundation; either version 2 of the License, or     *
00014  *   (at your option) any later version.                                   *
00015  *                                                                         *
00016  ***************************************************************************/
00017 
00018 #ifndef CODECINFO_ENTRY_H
00019 #define CODECINFO_ENTRY_H
00020 
00021 #include "String.h"
00022 #include "PluginInfo.h"
00023 
00024 
00025 class V_Codec;
00026 class A_Codec;
00027 class V_Track;
00028 class A_Track;
00029 
00030 class CodecPlugins;
00031 
00032 
00037 class Codec_Info: public PluginInfo {
00038     friend class CodecPlugins;
00039 public: 
00040     Codec_Info( const String Dateityp, const String Codecname, V_Codec *(*konstruktor)(V_Track *), const String Real_Codecname = "", const String InfoTxt = "", bool read=true, bool write=true );
00041     Codec_Info( const String Dateityp, const String Codecname, A_Codec *(*konstruktor)(A_Track *), const String Real_Codecname = "", const String InfoTxt = "", bool read=true, bool write=true );
00042     Codec_Info( const Codec_Info &entry );
00043     Codec_Info();
00044 
00045     ~Codec_Info();
00046 
00049     String CodecName( void );
00050 
00053     String AliasName( void );
00054 
00057     V_Codec *CreateVCodec( V_Track *track );
00058 
00061     A_Codec *CreateACodec( A_Track *track );
00062 
00065     String InfoText( void ) { return info_txt; }
00066 
00069     bool Video( void ) { return v_konstr != NULL; }
00070 
00073     bool Audio( void ) { return a_konstr != NULL; }
00074 
00077     String FileTyp( void ) { return datei_typ; }
00078 
00079 private:
00080     String datei_typ;
00081     String codec_name;
00082     String real_name;
00083     V_Codec *(*v_konstr)( V_Track *track );
00084     A_Codec *(*a_konstr)( A_Track *track );
00085 
00086     // Beschreibung
00087     String info_txt;
00088     
00089     // unterstützte Operationen
00090     bool can_read, can_write;
00091 };
00092 
00093 #endif

Erzeugt am Tue Dec 31 22:54:54 2002 für av_convert von doxygen1.2.9.1 geschrieben von Dimitri van Heesch, © 1997-2001