remoteControlPlaybackInterface.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 
00009 
00010 
00011 #pragma once
00012 
00013 #include "remoteControlDomainInterface.h"
00014 #include "virtualConstructor.h"
00015 #include "absoluteTime.h"
00016 
00017 #include <vlutil/vlString.h>
00018 
00019 class DtEntityIdentifier;
00020 class DtLgrResponsePdu;
00021 class DtFilename;
00022 
00023 namespace MAKLogger
00024 {
00025 
00028    class DT_DLL_LGRSIM DtRemoteControlPlaybackInterface : public DtRemoteControlDomainInterface
00029    {
00030    public:
00031 
00032       DT_VIRTUAL_CTR(DtRemoteControlPlaybackInterface,(DtRemoteControlInterface*))
00033 
00034       
00035       virtual ~DtRemoteControlPlaybackInterface();
00036 
00037    private:
00039       DtRemoteControlPlaybackInterface(const DtRemoteControlPlaybackInterface&);
00041       DtRemoteControlPlaybackInterface& operator=(const DtRemoteControlPlaybackInterface&);
00042 
00043    public:
00044 
00046 
00047       virtual const DtFilename& fileName() const;
00048       virtual void resetFileName(const DtFilename& name);
00050 
00052 
00053       virtual const DtAbsoluteTime& firstTime() const;
00054       virtual void resetFirstTime(const DtAbsoluteTime& time);
00056 
00058 
00059       virtual const DtAbsoluteTime& lastTime() const;
00060       virtual void resetLastTime(const DtAbsoluteTime& time);
00062 
00064 
00065       virtual const DtAbsoluteTime& startTime() const;
00066       virtual void resetStartTime(const DtAbsoluteTime& time);
00068 
00070 
00071       virtual const DtAbsoluteTime& stopTime() const;
00072       virtual void resetStopTime(const DtAbsoluteTime& time);
00074 
00076 
00077       virtual double playbackSpeed() const;
00078       virtual void resetPlaybackSpeed(double speed);
00080 
00082 
00083       virtual bool isFileOpened() const;
00084       virtual void resetIsFileOpened(bool isOpened);
00086 
00088 
00089       virtual bool isPlaying() const;
00090       virtual void resetIsPlaying(bool playing);
00092 
00094 
00095       virtual bool isPaused() const;
00096       virtual void resetIsPaused(bool paused);
00098 
00100 
00101       virtual bool isLoopAtEnd() const;
00102       virtual void resetIsLoopAtEnd(bool loopAtEnd);
00104 
00106 
00107       virtual bool isPlayOnLoad() const;
00108       virtual void resetIsPlayOnLoad(bool playOnLoad);
00110 
00112 
00113       virtual bool isPlaySkipping() const;
00114       virtual void resetIsPlaySkipping(bool skipping);
00116 
00118 
00119 
00121       virtual DtSequenceNumber openFile(const DtFilename& filename, bool constructFilePathAndName,
00122          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00123 
00126       virtual DtSequenceNumber closeFile(
00127          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00128 
00131       virtual DtSequenceNumber play(
00132          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00133 
00136       virtual DtSequenceNumber pause(
00137          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00138 
00141       virtual DtSequenceNumber unPause(
00142          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00143 
00146       virtual DtSequenceNumber stop(
00147          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00148 
00150       virtual DtSequenceNumber setPlaybackSpeed(double speed, bool skipping,
00151          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00152 
00155       virtual DtSequenceNumber jumpToStart(
00156          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00157 
00160       virtual DtSequenceNumber jumpToStop(
00161          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00162 
00165       virtual DtSequenceNumber jumpToTime(const DtAbsoluteTime& time,
00166          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00167 
00170       virtual DtSequenceNumber skipTimeForward(const DtRelativeTime& time,
00171          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00172 
00175       virtual DtSequenceNumber skipTimeBackward(const DtRelativeTime& time,
00176          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00177 
00180       virtual DtSequenceNumber setStartStopTimes(const DtAbsoluteTime& startTime,
00181          const DtAbsoluteTime& stopTime,
00182          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00183 
00185       virtual DtSequenceNumber setLoopAtEnd(bool enable,
00186          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00187 
00190       virtual DtSequenceNumber setPlayOnLoad(bool enable,
00191          const DtEntityIdentifier& destination=DtRemoteControlInterface::wildcardAddress());
00192 
00194 
00196       virtual void processResponse(const DtLgrResponsePdu& responsePdu);
00197 
00199       virtual void clearReceivedResponseCounts();
00200 
00201    public:
00202 
00204       static const char* commandToString(int command);
00205 
00206    protected:
00207 
00209 
00210 
00212       virtual void fileOpened(const DtEntityIdentifier& source, const DtString& fileName,
00213          const DtAbsoluteTime& firstTime, const DtAbsoluteTime& lastTime);
00214 
00217       virtual void fileOpened(const DtString& fileName,
00218          const DtAbsoluteTime& firstTime, const DtAbsoluteTime& lastTime);
00219 
00221       virtual void fileClosed(const DtEntityIdentifier& source);
00222 
00225       virtual void fileClosed();
00226 
00230       virtual void fileDoesNotExist(const DtEntityIdentifier& source, const DtString& filename);
00231 
00235       virtual void fileIncomplete(const DtEntityIdentifier& source, const DtString& filename, bool isIncomplete);
00236 
00240       virtual void fileInvalid(const DtEntityIdentifier& source, const DtString& filename, const DtString& reason);
00241 
00243       virtual void fileChanged(const DtEntityIdentifier& source);
00244 
00247       virtual void fileChanged();
00248 
00250       virtual void fileSaved(const DtEntityIdentifier& source);
00251 
00254       virtual void fileSaved();
00255 
00257       virtual void fileFormatCurrent(const DtEntityIdentifier& source, bool current);
00258 
00261       virtual void fileFormatCurrent(bool current);
00262 
00264       virtual void playbackChanged(const DtEntityIdentifier& source, bool currentlyPlaying);
00265 
00268       virtual void playbackChanged(bool currentlyPlaying);
00269 
00271       virtual void restarted(const DtEntityIdentifier& source);
00272 
00275       virtual void restarted();
00276 
00278       virtual void jumpTimeChanged(const DtEntityIdentifier& source, const DtAbsoluteTime& jumpTime);
00279 
00281       virtual void jumpTimeChanged(const DtAbsoluteTime& jumpTime);
00282 
00284       virtual void loopAtEndChanged(const DtEntityIdentifier& source, bool enabled);
00285 
00288       virtual void loopAtEndChanged(bool enabled);
00289 
00291       virtual void playOnLoadChanged(const DtEntityIdentifier& source, bool enabled);
00292 
00295       virtual void playOnLoadChanged(bool enabled);
00296 
00298       virtual void skippingPlaybackChanged(bool enabled);
00299 
00302       virtual void skippingPlaybackChanged(const DtEntityIdentifier& source, bool enabled );
00303 
00305       virtual void playbackSpeedChanged(const DtEntityIdentifier& source, double speed);
00306 
00309       virtual void playbackSpeedChanged(double speed);
00310 
00312       virtual void pausedChanged(const DtEntityIdentifier& source, bool paused);
00313 
00316       virtual void pausedChanged(bool paused);
00317 
00319       virtual void startStopTimesChanged(const DtEntityIdentifier& source, const DtAbsoluteTime& startTime,
00320          const DtAbsoluteTime& stopTime );
00321 
00324       virtual void startStopTimesChanged(const DtAbsoluteTime& startTime,
00325          const DtAbsoluteTime& stopTime );
00326 
00328       virtual void firstLastTimesChanged(const DtEntityIdentifier& source, const DtAbsoluteTime& firstTime,
00329          const DtAbsoluteTime& lastTime );
00330 
00333       virtual void firstLastTimesChanged(const DtAbsoluteTime& firstTime,
00334          const DtAbsoluteTime& lastTime );
00335 
00337 
00340       virtual void setFirstTime(const DtAbsoluteTime& time, bool initialValue=false);
00341 
00344       virtual void setLastTime(const DtAbsoluteTime& time, bool initialValue=false);
00345 
00348       virtual void setStartTime(const DtAbsoluteTime& time, bool initialValue=false);
00349 
00352       virtual void setStopTime(const DtAbsoluteTime& time, bool initialValue=false);
00353    protected:
00354 
00355       DtFilename myFileName;
00356       DtAbsoluteTime myFirstTime;
00357       DtAbsoluteTime myLastTime;
00358       DtAbsoluteTime myStartTime;
00359       DtAbsoluteTime myStopTime;
00360       DtAbsoluteTime myJumpTime;
00361       DtAbsoluteTime myPendingJumpTime;
00362       bool myIsFileOpened;
00363       bool myIsPlaying;
00364       bool myPendingIsPlaying;
00365       bool myFileFormatCurrent;
00366       bool myPendingFileFormatCurrent;
00367       bool myLoopAtEnd;
00368       bool myPendingLoopAtEnd;
00369       bool myPlayOnLoad;
00370       bool myPendingPlayOnLoad;
00371       bool myPlaybackSkipping;
00372       bool myPendingPlaybackSkipping;
00373       double mySpeed;
00374       double myPendingSpeed;
00375       bool myIsPaused;
00376       bool myPendingIsPaused;
00377 
00378       int myReceivedFileOpened;
00379       int myReceivedFileClosed;
00380       int myReceivedFileDoesNotExist;
00381       int myReceivedFileIncomplete;
00382       int myReceivedFileInvalid;
00383       int myReceivedFileChanged;
00384       int myReceivedFileSaved;
00385       int myReceivedFileFormatCurrent;
00386       int myReceivedPlaybackChanged;
00387       int myReceivedRestarted;
00388       int myReceivedLoopAtEndChanged;
00389       int myReceivedPlayOnLoadChanged;
00390       int myReceivedSkippingPlaybackChanged;
00391       int myReceivedPlaybackSpeedChanged;
00392       int myReceivedPausedChanged;
00393       int myReceivedStartStopTimesChanged;
00394       int myReceivedFirstLastTimesChanged;
00395       int myReceivedJumpTimeChanged;
00396 
00397    };
00398 }

Document ID: Generated on Tue Oct 11 19:41:03 EDT 2011 from SVN revision 107422
Copyright © 2005-2011 VT MÄK Inc. All Rights Reserved (www.mak.com)