Public Member Functions | Public Attributes

FCam::Action Class Reference

An abstract base class for actions. More...

#include <Action.h>

Inheritance diagram for FCam::Action:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual void doAction ()=0
 Perform the action.
virtual Actioncopy () const =0
 Make a new copy of this action (on the heap).

Public Attributes

int time
 The number of microseconds into the exposure at which this action should occur.
int latency
 How long before the time must doAction be called?

Detailed Description

An abstract base class for actions.

Definition at line 15 of file Action.h.


Member Function Documentation

virtual void FCam::Action::doAction (  )  [pure virtual]

Perform the action.

Derived classes should override this. This method will be called in the highest priority thread possible to allow for precise timing, so don't perform any long running computations in it unless you really want the entire OS to freeze.

Implemented in FCam::F2::Flash::StrobeStartAction, FCam::F2::Flash::StrobeStopAction, FCam::Flash::FireAction, and FCam::Lens::FocusAction.

virtual Action* FCam::Action::copy (  )  const [pure virtual]

Make a new copy of this action (on the heap).

Used when making deep copies of Shot objects. Inherit from CopyableAction instead to have this implemented for you using your action's copy constructor.

Implemented in FCam::CopyableAction< Derived >, FCam::CopyableAction< StrobeStartAction >, FCam::CopyableAction< FireAction >, FCam::CopyableAction< ApertureAction >, FCam::CopyableAction< SoundAction >, FCam::CopyableAction< FocusAction >, FCam::CopyableAction< StrobeStopAction >, and FCam::CopyableAction< ZoomAction >.


Member Data Documentation

The number of microseconds into the exposure at which this action should occur.

Definition at line 21 of file Action.h.


The documentation for this class was generated from the following files: