Developer Documentation
RAVL, Recognition And Vision Library
USER HOME PAGE CLASS LIST CONTENTS
Ravl - Core - Data Processing - Seekable Ports - DPPlayControlBodyC
 

  PUBLIC
DPPlayControlBodyC::DPPlayControlBodyC(void)
DPPlayControlBodyC::DPPlayControlBodyC(const DPSeekCtrlC &,bool,UIntT,UIntT)
DPPlayControlBodyC::~DPPlayControlBodyC(void)
DPPlayControlBodyC::Speed(IntT)
DPPlayControlBodyC::Tell(void) const
DPPlayControlBodyC::LastFrame(void) const
DPPlayControlBodyC::Size(void) const
DPPlayControlBodyC::Seek(UIntT)
DPPlayControlBodyC::Pause(void)
DPPlayControlBodyC::Continue(void)
DPPlayControlBodyC::Jog(IntT)
DPPlayControlBodyC::FixedStart(void) const
DPPlayControlBodyC::FixedEnd(void) const
DPPlayControlBodyC::ToBeginning(void)
DPPlayControlBodyC::FastFwd(void)
DPPlayControlBodyC::PlayFwd(void)
DPPlayControlBodyC::JogFwd(void)
DPPlayControlBodyC::Stop(void)
DPPlayControlBodyC::JogBkw(void)
DPPlayControlBodyC::PlayBkw(void)
DPPlayControlBodyC::FastBkw(void)
DPPlayControlBodyC::ToEnd(void)
DPPlayControlBodyC::SeekTo(UIntT)
DPPlayControlBodyC::PlaySubSequence(int,UIntT,UIntT)
DPPlayControlBodyC::SubSeqStart(void)
DPPlayControlBodyC::SubSeqEnd(void)
DPPlayControlBodyC::SubSeqMode(void)
DPPlayControlBodyC::Open(const DPSeekCtrlC &)
DPPlayControlBodyC::CheckUpdate(void)
DPEntityBodyC::Save(ostream &) const
DPEntityBodyC::Save(BinOStreamC &) const
DPEntityBodyC::Copy(void) const
RCBodyVC::Save(ostream &) const
RCBodyVC::Save(BinOStreamC &) const
RCBodyVC::Copy(void) const
RCBodyVC::DeepCopy(UIntT) const
RCBodyC::References(void) const
RCBodyC::Copy(void) const
RCBodyC::DeepCopy(UIntT) const
RCBodyC::IncRefCounter(void)
RCBodyC::DecRefCounter(void)

   DPPlayControlBodyC   
 
Base play control body class.
 
include "Ravl/DP/PlayControl.hh"
Created:16/03/99 
Source file:Ravl/OS/DataProc/PlayControl.hh
User Level:Develop
Library:RavlDPMT
In Scope:RavlN

Parent Classes: Derived Classes: Variables:
MutexC access;
Access control.

IntT inc;
Increments -ve and +ve 0==Stopped. 1=Normal play..

bool ok;
Are operations succeding?

bool pause;
Actively pause stream ?

SemaphoreC sema;
Stream pause semaphore.

DPSeekCtrlC ctrl;
Seek control handle.

bool passEOS;
Pass along End Of Stream.

UIntT start;
Inital frame no. (this is a valid frame. )

UIntT end;
final frame no. (this is a valid frame. )

IntT playMode;
0-Once through 1-Once through sub seq. 2-Repeat 3-back and forth.

IntT subStart;
Inital frame no of sub sequence. (this is a valid frame. )

IntT subEnd;
final frame no of sub sequence. (this is a valid frame. )

bool doneRev;
Use in palindrome mode.

IntT at;
Cache of input stream position.

IntT lastFrame;
Last frame displayed.

Methods:
DPPlayControlBodyC()
Default constructor.

DPPlayControlBodyC(const DPSeekCtrlC & nCntrl,bool nPassEOS = true,UIntT nstart = ((UIntT)),UIntT nend = ((UIntT)))
Constructor.

~DPPlayControlBodyC()
Destructor.

IntT Speed(IntT ninc)
Set increments.
1 == Normal play -1=Reverse play 2=Double speed forward etc..

UIntT Tell() const
Where are we in the stream ?
This gives the number of the NEXT frame that will be processed.

UIntT LastFrame() const
Get number of last frame read.

UIntT Size() const
How long is the stream ?
This is the number of frames in the sequence.

bool Seek(UIntT pos)
Seek to an absolute position in stream

void Pause()
Pause playing.

void Continue()
Continue playing.

void Jog(IntT frames = 1)
Move 'frames' forward or backward.

UIntT FixedStart() const
Get start of sub sequence.

UIntT FixedEnd() const
Get start of sub sequence.

void ToBeginning()
Goto beginning of sequence. (for GUI)

void FastFwd()
Fast forward. (for GUI)

void PlayFwd()
Play forward. (for GUI)

void JogFwd()
Go forward 1 frame. (for GUI)

void Stop()
Stop (for GUI)

void JogBkw()
Go backward 1 frame. (for GUI)

void PlayBkw()
Play backward. (for GUI)

void FastBkw()
Play backward. (for GUI)

void ToEnd()
Goto end of sequence. (for GUI)

void SeekTo(UIntT loc)
Goto position in sequence. (for GUI)

void PlaySubSequence(int mode,UIntT startfrm,UIntT endfrm)
Play a sub-sequence.
0-Once through whole sequence. 1-Once through sub seq. 2-Repeat 3-back and forth.

IntT & SubSeqStart()
Set sub sequence start.

IntT & SubSeqEnd()
Set sub sequence start.

IntT & SubSeqMode()
Set sub sequence start.

bool Open(const DPSeekCtrlC & nCntrl)
Open new video stream.
This assumes the input stream is locked by the calling function.

bool CheckUpdate()
Check state of stream after get.
This assumes the input stream is locked by the calling function.

#include "Ravl/DP/Entity.hh"
bool Save(ostream & out) const
Save to ostream.

bool Save(BinOStreamC & out) const
Save to binary stream.

RCBodyVC & Copy() const
Creat a copy of this object.

#include "Ravl/RCHandleV.hh"
bool Save(ostream & out) const
Save to stream 'out'.

bool Save(BinOStreamC & out) const
Save to binary stream 'out'.

RCBodyVC & Copy() const
Make copy of body.
This should be provided in derived classes. this funtion will issue an assertion failure if called.

RCBodyC & DeepCopy(UIntT levels = ((UIntT))) const
Make a deep copy of body.
This should be provided in derived classes. this funtion will issue an assertion failure if called.

#include "Ravl/RefCounter.hh"
UIntT References() const
Access count of handles open to this object.

RCBodyC & Copy() const
Make copy of body.
This should be provided in derived classes. this funtion will issue an assertion failure if called.

RCBodyC & DeepCopy(UIntT levels = ((UIntT))) const
Make a deep copy of body.
This should be provided in derived classes. this funtion will issue an assertion failure if called.

void IncRefCounter()
Increment reference counter.

bool DecRefCounter()
Decrement reference counter.


Maintainer:Charles Galambos, Created: 16/03/99, Documentation by CxxDoc: Tue Aug 13 09:59:30 2002