c3857c479c7afa67c0b17bfdffca237b2c872f47
[framework/web/wrt-plugins-common.git] / src / modules / API / MMPlayer / EventOpen.h
1 /*
2  * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  *    Licensed under the Apache License, Version 2.0 (the "License");
5  *    you may not use this file except in compliance with the License.
6  *    You may obtain a copy of the License at
7  *
8  *        http://www.apache.org/licenses/LICENSE-2.0
9  *
10  *    Unless required by applicable law or agreed to in writing, software
11  *    distributed under the License is distributed on an "AS IS" BASIS,
12  *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  *    See the License for the specific language governing permissions and
14  *    limitations under the License.
15  */
16 /*
17  * @author      Wojciech Bielawski (w.bielawski@samsung.com)
18  * @version     0.1
19  * @brief
20  */
21
22 #ifndef WRTDEVICEAPIS_MMPLAYER_EVENT_OPEN_H_
23 #define WRTDEVICEAPIS_MMPLAYER_EVENT_OPEN_H_
24
25 #include <dpl/shared_ptr.h>
26 #include <Commons/IEvent.h>
27 #include <Commons/WrtWrapper/IWrtWrapper.h>
28 #include <MMPlayer/IMMPlayer.h>
29
30 namespace WrtDeviceApis {
31 namespace MMPlayer {
32 namespace Api {
33
34 class EventOpen : public Commons::IEvent<EventOpen>
35 {
36   private:
37     IMMPlayerPtr m_player;
38     std::string m_filename;
39     Commons::IWrtWrapperPtr m_wrtWrapper;
40
41   public:
42     /**
43      * Getters
44      */
45     IMMPlayerPtr getPlayer() const
46     {
47         return m_player;
48     }
49     std::string getFilename() const
50     {
51         return m_filename;
52     }
53     Commons::IWrtWrapperPtr getWrtWrapper() const
54     {
55         return m_wrtWrapper;
56     }
57
58     EventOpen(const IMMPlayerPtr &player,
59               const std::string &filename,
60               const Commons::IWrtWrapperPtr &wrapper = Commons::IWrtWrapperPtr()) :
61         m_player(player),
62         m_filename(filename),
63         m_wrtWrapper(wrapper)
64     {
65     }
66 };
67
68 typedef DPL::SharedPtr<EventOpen> EventOpenPtr;
69 } // MMPlayer
70 } // Api
71 } // WrtDeviceApis
72
73 #endif // WRTDEVICEAPIS_MMPLAYER_EVENT_OPEN_H_