Line data Source code
1 : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : /*
3 : * This file is part of the LibreOffice project.
4 : *
5 : * This Source Code Form is subject to the terms of the Mozilla Public
6 : * License, v. 2.0. If a copy of the MPL was not distributed with this
7 : * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 : */
9 :
10 : #include "oglmanager.hxx"
11 : #include "oglframegrabber.hxx"
12 : #include "oglplayer.hxx"
13 :
14 : #include <cppuhelper/supportsservice.hxx>
15 :
16 : using namespace com::sun::star;
17 :
18 : namespace avmedia { namespace ogl {
19 :
20 1 : OGLManager::OGLManager( const uno::Reference< lang::XMultiServiceFactory >& rMgr )
21 1 : : m_xMgr( rMgr )
22 : {
23 : (void) m_xMgr;
24 1 : }
25 :
26 2 : OGLManager::~OGLManager()
27 : {
28 2 : }
29 :
30 1 : uno::Reference< media::XPlayer > SAL_CALL OGLManager::createPlayer( const OUString& rURL )
31 : throw (uno::RuntimeException, std::exception)
32 : {
33 1 : OGLPlayer* pPlayer( new OGLPlayer() );
34 1 : if( pPlayer->create(rURL) )
35 1 : return uno::Reference< media::XPlayer >(pPlayer);
36 : else
37 : {
38 0 : delete pPlayer;
39 : SAL_WARN("avmedia.opengl", "Can't create player for OpenGL model: " + rURL);
40 0 : return uno::Reference< media::XPlayer >();
41 : }
42 : }
43 :
44 0 : OUString SAL_CALL OGLManager::getImplementationName() throw ( uno::RuntimeException, std::exception )
45 : {
46 0 : return OUString("com.sun.star.comp.avmedia.Manager_OpenGL");
47 : }
48 :
49 0 : sal_Bool SAL_CALL OGLManager::supportsService( const OUString& rServiceName )
50 : throw ( uno::RuntimeException, std::exception )
51 : {
52 0 : return cppu::supportsService(this, rServiceName);
53 : }
54 :
55 0 : uno::Sequence< OUString > SAL_CALL OGLManager::getSupportedServiceNames()
56 : throw ( uno::RuntimeException, std::exception )
57 : {
58 0 : ::uno::Sequence< OUString > aRet(1);
59 0 : aRet[0] = "com.sun.star.media.Manager_OpenGL";
60 0 : return aRet;
61 : }
62 :
63 : } // namespace ogl
64 : } // namespace avmedia
65 :
66 : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|