os/mm/mmplugins/mmfwplugins/src/Plugin/Controller/Video/AviPlayController/subtitlesource.h
First public contribution.
1 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of "Eclipse Public License v1.0"
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
16 #ifndef SUBTITLESOURCE_H
17 #define SUBTITLESOURCE_H
24 /** The generic interface for the subtitle source */
28 /** Write subtitle source data to a buffer
30 @param aBuffer the buffer to be populated by srt subtitle source data
31 @return A system-wide error code
33 virtual TInt GetBuffer(TDes8& aBuffer) = 0;
35 /** Sets the the current subtitle source position
37 @param aPosition Offset from the start location
38 @return A system-wide error code
40 virtual TInt SetPosition(TInt aPosition) = 0;
42 /** Get the current subtitle language.
44 @return The current subtitle stream language
45 @leave If an error occurs, the method will leave with a system-wide error code.
47 virtual TLanguage SubtitleLanguageL() = 0;
49 /** Return all languages supported in the current video stream
51 @return All currently supported languages
52 @leave If an error occurs, the method will leave with a system-wide error code.
54 virtual void GetSupportedSubtitleLanguagesL(RArray<TLanguage>& aLanguages) = 0;
56 /** Set the subtitle language
58 @param aLanguage the language to be used by the decoder
59 @leave If an error occurs, the method will leave with a system-wide error code.
61 virtual void SetSubtitleLanguageL(TLanguage aLanguage) = 0;
64 #endif //SUBTITLESOURCE_H