CVlcVideoViewGuiComp.h
Go to the documentation of this file.
1 #ifndef iqaxmm_CVlcVideoViewGuiComp_included
2 #define iqaxmm_CVlcVideoViewGuiComp_included
3 
4 
5 // Qt includes
6 #include <QtGui/QFrame>
7 #include <ActiveQt/QAxWidget>
8 
9 // ACF includes
11 
12 // ACF-Solutions includes
13 #include "imm/IVideoController.h"
14 
15 // IACF includes
16 #include "iqaxmm/Wrapped/axvlc.h"
17 
18 
19 namespace iqaxmm
20 {
21 
22 
24  public iqtgui::TGuiComponentBase<QFrame>,
25  virtual public imm::IVideoController
26 {
27 public:
29 
30  I_BEGIN_COMPONENT(CVlcVideoViewGuiComp);
31  I_REGISTER_INTERFACE(istd::IChangeable);
32  I_REGISTER_INTERFACE(imm::IMediaController);
33  I_REGISTER_INTERFACE(imm::IVideoInfo);
34  I_REGISTER_INTERFACE(imm::IVideoController);
35  I_ASSIGN(m_framesPerSecondAttrPtr, "FramesPerSecond", "Default number of frames per second if this info is unavailable from video", true, 25.0);
36  I_END_COMPONENT;
37 
39 
40  // reimplemented (iqtgui::CGuiComponentBase)
41  void OnGuiCreated();
42  void OnGuiDestroyed();
43 
44  // reimplemented (imm::IMediaController)
45  virtual QString GetOpenedMediumUrl() const;
46  virtual bool OpenMediumUrl(const QString& url, bool autoPlay = true);
47  virtual void CloseMedium();
48  virtual bool IsPlaying() const;
49  virtual bool SetPlaying(bool state = true);
50  virtual double GetMediumLength() const;
51  virtual double GetCurrentPosition() const;
52  virtual bool SetCurrentPosition(double position);
53  virtual int GetSupportedFeatures() const;
54 
55  // reimplemented (imm::IVideoInfo)
56  virtual int GetFramesCount() const;
57  virtual double GetFrameIntervall() const;
58  virtual istd::CIndex2d GetFrameSize() const;
59  virtual double GetPixelAspectRatio() const;
60 
61  // reimplemented (imm::IVideoController)
62  virtual int GetCurrentFrame() const;
63  virtual bool SetCurrentFrame(int frameIndex);
64 
65  // reimplemented (ifile::IFileTypeInfo)
66  virtual bool GetFileExtensions(QStringList& result, int flags = -1, bool doAppend = false) const;
67  virtual QString GetTypeDescription(const QString* extensionPtr = NULL) const;
68 
69 private:
70  AXVLC::VLCPlugin2* m_vlcWidgetPtr;
71  AXVLC::IVLCInput* m_vlcInputPtr;
72  AXVLC::IVLCPlaylist* m_playlistPtr;
73 
74  QString m_currentUrl;
75 
76  I_ATTR(double, m_framesPerSecondAttrPtr);
77 };
78 
79 
80 } // namespace iqaxmm
81 
82 
83 #endif // !iqaxmm_CVlcVideoViewGuiComp_included
84 
virtual int GetCurrentFrame() const
virtual double GetMediumLength() const
virtual double GetPixelAspectRatio() const
virtual bool IsPlaying() const
virtual istd::CIndex2d GetFrameSize() const
virtual bool OpenMediumUrl(const QString &url, bool autoPlay=true)
virtual QString GetTypeDescription(const QString *extensionPtr=NULL) const
virtual int GetFramesCount() const
virtual int GetSupportedFeatures() const
virtual bool GetFileExtensions(QStringList &result, int flags=-1, bool doAppend=false) const
virtual double GetFrameIntervall() const
virtual bool SetCurrentFrame(int frameIndex)
virtual double GetCurrentPosition() const
virtual bool SetCurrentPosition(double position)
virtual bool SetPlaying(bool state=true)
virtual QString GetOpenedMediumUrl() const
iqtgui::TGuiComponentBase< QFrame > BaseClass

© 2007-2011 Witold Gantzke and Kirill Lepskiy