50 #ifndef _FORMATTERPLAYER_H_
51 #define _FORMATTERPLAYER_H_
53 #include "util/functions.h"
54 using namespace ::br::pucrio::telemidia::util;
56 #include "system/compat/SystemCompat.h"
57 using namespace ::br::pucrio::telemidia::ginga::core::system::compat;
59 #include "mb/LocalScreenManager.h"
60 #include "mb/interface/IInputEventListener.h"
61 #include "mb/interface/ISurface.h"
62 using namespace ::br::pucrio::telemidia::ginga::core::mb;
64 #include "player/IPlayer.h"
65 using namespace ::br::pucrio::telemidia::ginga::core::player;
67 #include "ncl/components/Content.h"
68 #include "ncl/components/ContentNode.h"
69 #include "ncl/components/NodeEntity.h"
70 #include "ncl/components/ReferenceContent.h"
71 using namespace ::br::pucrio::telemidia::ncl::components;
73 #include "ncl/interfaces/LambdaAnchor.h"
74 #include "ncl/interfaces/IntervalAnchor.h"
75 using namespace ::br::pucrio::telemidia::ncl::interfaces;
77 #include "ncl/connectors/EventUtil.h"
78 using namespace ::br::pucrio::telemidia::ncl::connectors;
80 #include "gingancl/model/CompositeExecutionObject.h"
81 #include "gingancl/model/ExecutionObject.h"
82 using namespace ::br::pucrio::telemidia::ginga::ncl::model::components;
84 #include "gingancl/model/AttributionEvent.h"
85 #include "gingancl/model/FormatterEvent.h"
86 #include "gingancl/model/PresentationEvent.h"
87 using namespace ::br::pucrio::telemidia::ginga::ncl::model::event;
89 #include "IPlayerAdapterManager.h"
90 #include "IPlayerAdapter.h"
91 #include "NominalEventMonitor.h"
101 namespace telemidia {
106 public IPlayerListener,
public IAttributeValueMaintainer,
107 public IInputEventListener {
110 static ILocalScreenManager* dm;
111 static double eventTS;
117 ExecutionObject* object;
119 string playerCompName;
122 GingaScreenID myScreen;
128 pthread_mutex_t objectMutex;
134 bool instanceOf(
string s);
135 virtual void setNclEditListener(IPlayerListener* listener){};
136 void setOutputWindow(GingaWindowID windowId);
139 virtual void rebase();
140 virtual void createPlayer();
143 int getObjectDevice();
144 virtual bool hasPrepared();
145 bool setKeyHandler(
bool isHandler);
148 double prepareProperties(ExecutionObject* obj);
151 virtual bool prepare(
152 ExecutionObject*
object, FormatterEvent* mainEvent);
156 virtual void prepareScope(
double offset=-1);
159 double getOutTransDur();
162 double getOutTransTime();
163 void checkAnchorMonitor();
165 static void printAction(
167 ExecutionObject*
object);
169 static void printAction(
string command);
172 virtual bool start();
174 virtual bool pause();
175 virtual bool resume();
176 virtual bool abort();
177 virtual void naturalEnd();
180 bool checkRepeat(PresentationEvent* mainEvent);
183 virtual bool unprepare();
184 virtual bool setPropertyValue(
185 AttributionEvent* event,
string value);
187 void setPropertyValue(
string name,
string value);
189 string getPropertyValue(
void* event);
190 virtual string getPropertyValue(
string name);
192 double getObjectExpectedDuration();
193 void updateObjectExpectedDuration();
194 double getMediaTime();
195 IPlayer* getPlayer();
197 virtual void updateStatus(
203 bool userEventReceived(IInputEvent* ev);
206 void setVisible(
bool visible);
213 virtual void flip(){};
214 virtual void timeShift(
string direction);
223 using namespace ::br::pucrio::telemidia::ginga::ncl::adapters;
225 #endif //_FORMATTERPLAYER_H_
Definition: NominalEventMonitor.h:89
Definition: IPlayerAdapterManager.h:65
Definition: IPlayerAdapter.h:67
Definition: FormatterPlayerAdapter.h:105