diff options
author | Minh Ngo <nlminhtl@gmail.com> | 2013-06-13 09:43:51 +0300 |
---|---|---|
committer | Michael Meeks <michael.meeks@suse.com> | 2013-07-26 10:50:17 +0100 |
commit | 7c16e27ad0417764af9f21d2ddfeae95850630a9 (patch) | |
tree | 4155ee0f6d5774b8c9d3ff534720b53875228857 /avmedia/source/vlc/vlcplayer.hxx | |
parent | ed05db48c00f5892dad3704885c8621d68c1298d (diff) |
Initial player/manager patterns for the vlc module
Change-Id: I600c3b273343906fbaed18629f425ce5b590b92e
Diffstat (limited to 'avmedia/source/vlc/vlcplayer.hxx')
-rw-r--r-- | avmedia/source/vlc/vlcplayer.hxx | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/avmedia/source/vlc/vlcplayer.hxx b/avmedia/source/vlc/vlcplayer.hxx new file mode 100644 index 000000000000..f82bd597fc01 --- /dev/null +++ b/avmedia/source/vlc/vlcplayer.hxx @@ -0,0 +1,61 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef _VLCPLAYER_HXX +#define _VLCPLAYER_HXX + +#include "vlccommon.hxx" + +#include "com/sun/star/media/XPlayer.hpp" +#include <cppuhelper/basemutex.hxx> + +namespace avmedia { +namespace vlc { + +typedef ::cppu::WeakComponentImplHelper2< ::com::sun::star::media::XPlayer, + ::com::sun::star::lang::XServiceInfo > VLC_Base; + +class VLCPlayer : public ::cppu::BaseMutex, + public VLC_Base +{ +public: + void SAL_CALL start(); + void SAL_CALL stop(); + ::sal_Bool SAL_CALL isPlaying(); + double SAL_CALL getDuration(); + void SAL_CALL setMediaTime( double fTime ); + double SAL_CALL getMediaTime(); + double SAL_CALL getRate(); + void SAL_CALL setPlaybackLoop( ::sal_Bool bSet ); + ::sal_Bool SAL_CALL isPlaybackLoop(); + void SAL_CALL setVolumeDB( ::sal_Int16 nDB ); + ::sal_Int16 SAL_CALL getVolumeDB(); + void SAL_CALL setMute( ::sal_Bool bSet ); + ::sal_Bool SAL_CALL isMute(); + css::awt::Size SAL_CALL getPreferredPlayerWindowSize(); + ::com::sun::star::uno::Reference< css::media::XPlayerWindow > SAL_CALL createPlayerWindow( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments ); + ::com::sun::star::uno::Reference< css::media::XFrameGrabber > SAL_CALL createFrameGrabber(); +}; + +} +} + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
\ No newline at end of file |