Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

vuKeyFramerDialog Class Reference

This is the Key Frame Animator for the vuVolume class. More...

#include <vuKeyFramerDialog.h>

Inheritance diagram for vuKeyFramerDialog:

Inheritance graph
[legend]
Collaboration diagram for vuKeyFramerDialog:

Collaboration graph
[legend]
List of all members.

Public Types

enum  {
  idAUTOSHOT = 1001, idCANVAS, idBURSTPLAY, idCLOSE,
  idFASTFORWARD, idGENIMAGES, idKFBOUNCE, idKFLOOP,
  idKFSELECT, idLOAD, idPAUSE, idPLAY,
  idPLAYFROMIMAGES, idRECORD, idREWIND, idSAVE,
  idSCROLLER, idSTOP, idTAKESHOT, idVIDBOUNCE,
  idVIDCLOSE, idVIDFASTFORWARD, idVIDLOOP, idVIDLOAD,
  idVIDPAUSE, idVIDPLAY, idVIDREWIND, idVIDSELECT,
  idVIDSTOP
}
 these are the identifiers associated with each even in this object. More...

Public Member Functions

 vuKeyFramerDialog (wxWindow *parent=NULL, vuCamera *cam=NULL, vuBasicUtility *UWin=NULL)
 Default constructor,.
virtual ~vuKeyFramerDialog ()
 destructor
void setup (vuCamera *cam, vuBasicUtility *UWin)
 This will set the camera that this utility operates on to be the one pointed to be cam, and the parent Gui to be UWin.
virtual void Close ()
virtual bool Destroy ()
bool IsFastForwarding ()
 This returns true if there is a key frame animation that is playing and is being fastforwarded.
bool IsImgsLoaded ()
 This returns true if the animator has a video file loaded into memory that it can play from, otherwise it returns false.
bool IsKFBouncing ()
 This returns true if the key frame animation that is currently playing (or would be playing if one were started) is bouncing.
bool IsKFLooping ()
 This returns true if the key frame animation that is currently playing ( or would be playing if one were started) is looping.
bool IsKFReversing ()
 This return true if the key frame animation that is currently playing (or would be playing if one were started) is reversing.
bool IsLoaded ()
 This returns true if the animator has a key frame file loaded into memory that it can play from, otherwise, it returns false.
bool IsPaused ()
 This returns true if the animator is not currently paused while playing back an animation, and returns false otherwise.
bool IsPlaying ()
 This returns true if the animator is currently playing back an animation (if this animation is being played from key frames, but not prerendered video), and returns false otherwise.
bool IsPlayingImgs ()
 This returns true if the animator is currently playing an animation from prerendered videos, and returns false otherwise.
bool IsRecording ()
 This returns true if the animator is currently recording an animation (that is, it's recording key frames to a key frame file), false otherwise.
bool IsRewinding ()
 This returns true if the animator is currently rewinding through a key framed animation, otherwise it returns false.
bool IsStopped ()
 This returns true if the animator is stopped (the key frames, not the prerendered video), but it may return false if it is not playing something...
bool IsVideoBouncing ()
 This returns true if the animation that is currently playing is bouncing (or would be bouncing if one were to be started).
bool IsVideoFastForwarding ()
 This returns true if the animator is currently fastforwarding through a prerendered video animation, and returns false otherwise.
bool IsVideoLooping ()
 This returns true if the animator is currently looping it's plays of prerendered video animations, and returns false otherwise.
bool IsVideoPaused ()
 This returns true if the animator is playing a prerendered video and that video is paused, and will return false otherwise (NB, there is a distinction between this and IsPaused, namely the latter is on key frames, and the former is pregenerated).
bool IsVideoPlaying ()
 This returns true if there is a video playing, and false otherwise.
bool IsVideoReversing ()
 This returns true if there is a video playing in reverse direction at the normal speed of play, and false otherwise.
bool IsVideoRewinding ()
 This returns true if there is a video rewinding and false otherwise.
virtual void run (int whatsup, void *data)
 This function is the entry point for any threads through vuThread (so that it can run independently, and other stuff can be given time to run, like the event handlers so that the user can tell this to stop).

Protected Member Functions

void setIsFastForwarding (bool isit)
 This function sets the return of IsFastForwarding () to be isit (ie, this sets the state of the KeyFramer Video FastForwarding to be isit).
void setIsImgsLoaded (bool isit)
 This function sets the state {is prerendered images loaded} to be the same value as isit.
void setIsKFBouncing (bool isit)
 This function sets the state of of the Key Frame Bouncing in an animation to be The same value as isit.
void setIsKFLooping (bool isit)
 This function sets the state of of the Key frame Looping in an animation to be The same value as isit.
void setIsKFReversing (bool isit)
 This function sets the state of of the KF Reversng in an animation to be The same value as isit.
void setIsLoaded (bool isit)
 This function sets the state of a key frame file loaded to be the same value as isit.
void setIsPaused (bool isit)
 This function sets the state of a key frame file being paused to be the same value as isit.
void setIsPlaying (bool isit)
 This function sets the state of a key frame file being played to be the same value as isit.
void setIsPlayingImgs (bool isit)
 This function sets the state of a prerendered animation file loaded to be the same value as isit.
void setIsRecording (bool isit)
 This function sets the state of a key frame file being recorded to to be the same value as isit.
void setIsRewinding (bool isit)
 This function set the state of key frame rewinding to be the same value as isit.
void setIsStopped (bool isit)
 This function sets the state of a key frame file being stopped to to be the same value as isit.
void setIsVideoBouncing (bool isit)
 This function sets the state of of the Video Bouncing in an animation to be The same value as isit.
void setIsVideoFastForwarding (bool isit)
 This function will set the state of Video Fast Forwarding to be the same value as isit...
void setIsVideoLooping (bool isit)
 This function sets the state of of the Video Looping in an animation to be The same value as isit.
void setIsVideoPaused (bool isit)
 This function will set the state of Video Paused to be the same value as isit.
void setIsVideoPlaying (bool isit)
 This function will set the state of Video Playing to be the same value as isit.
void setIsVideoReversing (bool isit)
 This function sets the state of of the Video Reversing in an animation to be The same value as isit.
void setIsVideoRewinding (bool isit)
 This function will set the state of Video Rewinding to be the same value as isit.
void OnAutoShot (wxCommandEvent &ev)
 This function will be called every time a timer event occurs.
void OnClose (wxCommandEvent &ev)
 This function will close the key frame file that has currently been loaded or is currently being recorded to.
void OnFastForward (wxCommandEvent &ev)
 This code will be called when a key frame file is playing and the fast forward button has been pressed.
void OnKFBounce (wxCommandEvent &ev)
 This code will be called whenever the user chagnes the Key Frame side's Bounce check box.
void OnKFLoop (wxCommandEvent &ev)
 This code will be called whenever the user chagnes the Key Frame side's Loop check box.
void OnKFSelect (wxCommandEvent &ev)
void OnLoad (wxCommandEvent &ev)
 This Function will be called when the Key Frame load button is pressed.
void OnPause (wxCommandEvent &ev)
 This function will be called when the Key Frame pause button is pressed.
void OnPlay (wxCommandEvent &ev)
 This function will be called when the Key Frame play button has been pressed.
void OnPlayFromImages (wxCommandEvent &ev)
 This function will be called when the video play button has been pressed.
void OnRecord (wxCommandEvent &ev)
 This function will be called when the key frame record button has been pressed.
void OnRewind (wxCommandEvent &ev)
 This code will be called when the key frame rewind button has been pressed It will start rewinding the playing animation when it is pressed.
void OnSave (wxCommandEvent &ev)
 This function will be called when the key frame record button has been pressed.
void OnStop (wxCommandEvent &ev)
 This function will be called when the key frame stop button has been pressed.
void OnTakeShot (wxCommandEvent &ev)
 This function will be called when the Key frame take shot button has been pressed.
void OnVideoBounce (wxCommandEvent &ev)
 This code will be called whenever the user chagnes the Video side's Bounce check box.
void OnVideoClose (wxCommandEvent &ev)
 this is the other of the two cameras that will be used by the PlayInTime () method to interpolate between key frames
void OnVideoFastForward (wxCommandEvent &ev)
 This function will be called when the video fast forward button has been pressed.
void OnVideoLoad (wxCommandEvent &ev)
 This function will be called when the video Load button has been pressed.
void OnVideoLoop (wxCommandEvent &ev)
 This code will be called whenever the user changes the Video side's loop check box.
void OnVideoPause (wxCommandEvent &ev)
 This function will be called when the video pause button has been pressed.
void OnVideoPlay (wxCommandEvent &ev)
 This function will be called when the video play button has been pressed.
void OnVideoReverse (wxCommandEvent &ev)
void OnVideoRewind (wxCommandEvent &ev)
 This function will be called when the video Rewind button has been pressed.
void OnVideoSelect (wxCommandEvent &ev)
void OnVideoStop (wxCommandEvent &ev)
 This function will be called when the video stop button has been pressed.
void BurstPlay ()
 This will play every key frame in order as fast as the computer can.
void BurstPlayGI ()
 This will play every key fram in order as fast as the computer can.
void LoadFunc ()
 This will load key frame animation files after prompting the user to specify which one to load.
void PlayFromImages (bool fromevttimer=false)
 This will play back a prerendered video inside the method.
void PlayFunc ()
 This will play an animation from key frame files, and will load.
void PlayInTime ()
 This will play an animation from key frame files, and will do so with.
void PlayNextFrame ()
 This will play the next frame of a key frame animation...
void PlayNextImage ()
 This will play the next frame of a prerendered video file.
void RecordFunc ()
 This will start recording an animation of key frame files.
void RecordInTime ()
 This was for automatic snap shots, but I don't think that I'll use it yet...
void SaveFunc (bool writechanges=false)
 This will save a key frame animation file.
virtual void buildCustomSizer ()
 Add the sliders for the light sources.
void rebuildCustomSizer ()
 Calls buildCustomSizer and refreshes Layout of the dialog.
bool TransferDataFromWindow ()
 Part of the wxWindows architecture -- there is no data to transfer.
bool TransferDataToWindow ()
 Part of the wxWindows architecture -- there is no data to transfer.
int bisect_time_vector_search (float time, int start, int finish)
 This will perform a bisection search on the list of times to find time (it will only look between start and finish).
void clear_vectors ()
 This will clear the camera and time lists.
float get_frame_number (float time)
 This will return a frame value given time.
FILE * OpenGIFile (bool write=false)
 This will open an animation file (video).
void TimerEvent ()
 This function will be called when a timer event occurs.

Protected Attributes

wxBoxSizer * m_CustomSizer
 This can probably go.
wxBoxSizer * m_MainSizer
 This is the main screen that will be written to by this dialog.
wxButton * m_close
 This is the key frame close button.
wxBitmapButton * m_fastforward
 This is the key frame fast forward button.
wxButton * m_load
 This is the key frame load button.
wxBitmapButton * m_pause
 This is the key frame pause button.
wxBitmapButton * m_play
 This is the key frame play button.
wxButton * m_playfromimages
 This is the video play button.
wxBitmapButton * m_record
 This is the key frame record button.
wxBitmapButton * m_rewind
 This is the key frame rewind button.
wxButton * m_save
 This is the key frame save button.
wxBitmapButton * m_stop
 This is the key frame stop button.
wxButton * m_takeshot
 This is the key frame take snap shot button.
wxButton * m_vid_close
 This is the video close button.
wxButton * m_vid_fastforward
 This is the video fast forward button.
wxButton * m_vid_load
 This is the video load button.
wxButton * m_vid_pause
 This is the video pause button.
wxButton * m_vid_play
 This is the video play button.
wxButton * m_vid_rewind
 This is the video rewind button.
wxButton * m_vid_stop
 This is the video stop button.
wxCheckBox * m_autoshot
 This is the checkbox to select if snapshots should be taken automatically.
wxCheckBox * m_burstplay
 This is the checkbox to select if the key frame animator should play only key frames and do so as fast as it can.
wxCheckBox * m_genimages
 This is the checkbox to select if a video should be generated of the animation.
wxCheckBox * m_kf_bounce
 This is the checkbox that will be selected if the key framer should bounce on it's animations.
wxCheckBox * m_kf_loop
 This is the checkbox that will be selected if the key framer should loop on it's animations.
wxCheckBox * m_vid_bounce
 This is the checkbox that will be selected if the video portion of the animator should bounce while playing it's animations.
wxCheckBox * m_vid_loop
 This is the checkbox that should be selected if the video portion of the animator should loop while playing it's animations.
wxPanelm_divider
 This is the dividing line on the screen between key frame handling and video handling.
wxPanelm_divider2
 This is the dividing line on the screen between key frame handling and video handling.
wxTextCtrl * m_time_final
 This is dormant for now, this is the end time of the set.
wxTextCtrl * m_time_delay
 This is the time delay with which an animation will be generated ie, if m_time_delay contains the text 0.03 it will generate 33 images per second of animation time in the video file (so that the video can play back at 33 frames per second).
wxScrollBar * m_scroller
 This is a scroll bar to be used later on when full editing capabilities are added to this key framer.
wxStaticText * m_fm_rate
 This is where the frame rate text identifier is stored (This will tell the user that the corresponding text box is where he inputs the frame rate.
wxStaticText * m_frames_played_txt
 This will display the number of frames that have been played in the key frame portion of the animator.
wxCheckBox * m_kf_txt
 This displays the title of the key frame handling section of the animator.
wxStaticText * m_kf_status_txt
 This displays the status of the key frame handling section of the animator (ie, playing, paused, fastforwarding, rewinding, etc).
wxStaticText * m_fm_rate_txt
 This displays the frame rate of the key frame handling section of the animator.
wxStaticText * m_loaded_txt
 This displays the name of the key frame file that has been loaded into the key frame handling section of the animator.
wxStaticText * m_total_time
 This displays the total time taken to render the scenes to the screen.
wxStaticText * m_vid_fm_rate_txt
 This displays the frame rate that a video play back is achieving.
wxStaticText * m_vid_frames_played_txt
 This displays the number of frames that have been played by the video side of the animator in the current operation.
wxStaticText * m_vid_loaded_txt
 This displays which video is currently loaded and can be played.
wxStaticText * m_vid_status_txt
 This displays what the status of the video player (ie, is it playing, paused, fastforwarding, etc...).
wxStaticText * m_vid_total_time_txt
 This displays the total time the video has spent running it's animation so far.
wxCheckBox * m_vid_txt
 This displays the title of the video handling section on the key framer window.
bool mb_fast_forward
 This is true if the key frame handler is fast- forwarding, false otherwise.
bool mb_imgs_loaded
 This is true if there is a video loaded, and is false otherwise.
bool mb_kf_reverse
 This is true if the key frame handler is reversing, false otherwise.
bool mb_kf_select
bool mb_loaded
 This is true if a key frame file is loaded and is false otherwise.
bool mb_pause
 This is true if the key framer handler is paused while it is playing something else, and is false otherwise.
bool mb_play
 This is true if the key framer handler is playing, and is false otherwise.
bool mb_play_from_images
 This is true if there is a video playing, and is false otherwise.
bool mb_record
 This is true if the key frame handler is recording something, and is false otherwise.
bool mb_rewind
 This is true if the key frame handler is rewinding something, and is false otherwise.
bool mb_run
 This is true if the key frame handler is running something and is false otherwise..
bool mb_stop
 This is true if the key frame handler is stopped, and is false otherwise.
bool mb_video_bounce
bool mb_video_fast_forward
 This is true if the video handler is fast forwarding through a video file.
bool mb_video_loop
bool mb_video_pause
 This is true if the video handler is paused while it is playing or fastforwarding or rewinding a video file, and is false otherwise.
bool mb_video_select
bool mb_video_reverse
 This is true if the video portion of the animator is reversing, false otherwise.
bool mb_video_rewind
 This is true if the video handler is rewinding while it is playing a video and is false otherwise.
char * m_play_video_buf
 This is the screen buffer that files are being read to and that images are being allocated from.
char * m_img_fstart
 This is the filename of the animation that's being loaded into the video buffer.
FILE * m_imgfp
 This is a pointer to the file that is being loaded from.
float time_t
float m_pause_time
float m_play_time
 This is the total play time of a key frame animation file.
float m_play_times [5]
 This array contains the last five play times in the key frame animation.
float m_play_video_times [5]
 This is the array of the last five play times when playing a video.
float m_play_video_ttime
 This is the length of time that the video is currently playing so that it can work out which cel that it should play.
int m_currentframe
 This is the current frame that we are playing in the key frame portion of the animator.
int counter
int m_play_counter
 This keeps track of how many frames were displayed in a key frame animation file.
int m_play_video_frame
 This is the frame that the video is currently playing.
int m_play_video_size
 This is the size of the buffer that is needed to store frames in the video player.
void * m_PlayTimer
 This is a pointer to a timer...
vuBasicUtilitym_Gui
 This is a pointer to the calling utility This is needed so that I can communicate with it probably when I need to (tell it to rerender, redisplay, etc).
vuCameram_camera
 this is the default camera that the Key frame animator will read from and write to (this is a pointer to the camera used by the method to render from..
vuCameram_play_camera_1
 this is one of the two cameras that will be used by the PlayInTime () method to interpolate between key frames
vuCameram_play_camera_2
 this is the other of the two cameras that will be used by the PlayInTime () method to interpolate between key frames
vuDVector< floatttimevector
 This will be used to store the time associated with each cel in a video animation.
vuDVector< char * > tfilenamevector
 This will be used to store the filenames of each of the PPMs in a video animation (these will be preloaded to speed things up a bit).
vuDVector< vuCamera * > m_camera_vector
 This will be used to store The cameras (ie, key frame i's camera will be at m_camera_vector [i])/.
vuDVector< floatm_time_vector
 This will be used to store the times that each key frame is located at (ie, key frame i is at time m_time_vector [i]).
vuHWTimer m_timer
 This will be used as a general purpose timer.
vuHWTimer m_pause_timer
 This will be used to time the length of time that a pause has taken.
vuHWTimer m_play_timer
 this will be used to time the play of the animation files
vuPPM m_PPMHandler
 This will read ppm files and put them into the screen buffers.
vuStopWatch debugtimer
 This timer was used to work out the time taken by specific sections of code to run.
vuStopWatch m_playwatch
 This is used to figure out how long it's taking for the key frame to play, and to figure out which frame or interpolated frame it should play next.
vuStopWatch m_vid_play_timer
 This timer is used to figure out how long it takes to play back a video (it's here because the fucntion is borken up into steps of playnextimage (), so that the other wxevents could be processed in that time.

Friends

class vuEvtGenerator
 This class will generate the timer events and will call the event handler in this class.

Detailed Description

This is the Key Frame Animator for the vuVolume class.

By simply overriding a few functions in vuBasicUtility, and using the standard vuVolumeFramework, it will be simple for any method added to vuVolume to interface with this class.

This class will allow the user to double right click on the utility that he/she is using to display a volume.

From this, the KeyFramer will pop up, allowing the user to record to a file certain key frames, along with their associated times.

Then, the user will be able to generate animations that will inerpolate the camera to work out the current camera position and store those animations to disk

Then, the user will be able to play those animations in time.

The user will also be able to play the animations in time without prerendering.

This will allow the user to perform direct time comparisons between two method on the same test run so long as they use the same type of camera.

NB - The prerendered video uses different functions than the key frame portion, whenever you are using any function, make sure that you are using the appropriate one (ie, use the prerendered video version of a play to play rather than the other one).

This animator plays as follows (since threads won't work without design changes to vuVolume or to wxWindows, this is how it has to be).

Play_initialize ();

while (there is a next frame to play) Play_next_frame (); wait for a while so that other events can be processed (). end while

Note that fastforwarding and rewinding work by:

starting a timer reading the timer every so often adding or subtracting vuKF_spd_mul * time going to the time of the play reseting the timer, starting this process again

Todo:
add a scroll bar and the capabilities to edit a key frame file such as add, move or delete key frames...

add capabilities for the user to place a frame to a different time

add the capabilities to display icons in place of the animation

thread the process to make it run more smoothly (ie, thead the plays so that the screen and controls are occasionally updated everything is set up correctly to do so through vuThread. currently, the limiting factor is that you will get asynchronous XLib errors if you try to do this. There needs to be some sort of locking (which wxwindows has to use) before this will work properely. This will have to use XInitThreads () and XLockDisplay, etc... It works without this, but it'd work better with it.

add better file type to read from for animation (like avi's or mpegs... ppm is just too large for big animations and too slow for high frame rates.). 300 by 500 is about the largest we can reasonably get on a fast machine with the PPM method... The I/O is just too slow for much larger sets.

change the method of instanstiation to something that is consistent with the lighter.

Definition at line 286 of file vuKeyFramerDialog.h.


Member Enumeration Documentation

anonymous enum
 

these are the identifiers associated with each even in this object.

Enumeration values:
idAUTOSHOT 
idCANVAS 
idBURSTPLAY 
idCLOSE 
idFASTFORWARD 
idGENIMAGES 
idKFBOUNCE 
idKFLOOP 
idKFSELECT 
idLOAD 
idPAUSE 
idPLAY 
idPLAYFROMIMAGES 
idRECORD 
idREWIND 
idSAVE 
idSCROLLER 
idSTOP 
idTAKESHOT 
idVIDBOUNCE 
idVIDCLOSE 
idVIDFASTFORWARD 
idVIDLOOP 
idVIDLOAD 
idVIDPAUSE 
idVIDPLAY 
idVIDREWIND 
idVIDSELECT 
idVIDSTOP 

Definition at line 302 of file vuKeyFramerDialog.h.


Constructor & Destructor Documentation

vuKeyFramerDialog::vuKeyFramerDialog wxWindow *  parent = NULL,
vuCamera cam = NULL,
vuBasicUtility UWin = NULL
 

Default constructor,.

This will set the parent of this window to be parent.

This will set the camera that this is to operate on (read from, write to) to be the camera pointed to by NULL (vuPerspective, vuParallel, etc...).

This will treat UWin as the calling GUI (ie, it'll make it's changes to UWin);

Definition at line 57 of file vuKeyFramerDialog.cpp.

References idCLOSE, idLOAD, vuEvtGenerator::setKeyFramer(), size, vuKF_bounce_msg, vuKF_default_curr_loaded_msg, vuKF_default_fm_rate_msg_, vuKF_frames_played_msg_, vuKF_loop_msg, vuKF_render_time_msg, vuKF_spd_mul, and vuKF_status_msg.

Here is the call graph for this function:

vuKeyFramerDialog::~vuKeyFramerDialog  )  [virtual]
 

destructor

Definition at line 332 of file vuKeyFramerDialog.cpp.

References vuDVector< T >::getLength(), m_camera_vector, vuDVector< T >::removeRange(), and tfilenamevector.

Here is the call graph for this function:


Member Function Documentation

int vuKeyFramerDialog::bisect_time_vector_search float  time,
int  start,
int  finish
[protected]
 

This will perform a bisection search on the list of times to find time (it will only look between start and finish).

Definition at line 2603 of file vuKeyFramerDialog.cpp.

References m_time_vector.

Referenced by get_frame_number().

virtual void vuKeyFramerDialog::buildCustomSizer  )  [inline, protected, virtual]
 

Add the sliders for the light sources.

This function is called after a new transfer function is loaded.

Definition at line 891 of file vuKeyFramerDialog.h.

Referenced by rebuildCustomSizer().

void vuKeyFramerDialog::BurstPlay  )  [protected]
 

This will play every key frame in order as fast as the computer can.

Definition at line 1715 of file vuKeyFramerDialog.cpp.

References vuBasicUtility::DrawAgain(), vuDVector< T >::getLength(), m_camera, m_camera_vector, m_fm_rate_txt, m_frames_played_txt, m_Gui, m_total_time, vuStopWatch::Start(), vuKF_default_fm_rate_msg_, vuKF_frames_played_msg_, vuKF_precision_digits, and vuKF_render_time_msg.

Referenced by PlayFunc().

Here is the call graph for this function:

void vuKeyFramerDialog::BurstPlayGI  )  [protected]
 

This will play every key fram in order as fast as the computer can.

This will also record the images to a file that the user will provide when prompted.

Definition at line 1754 of file vuKeyFramerDialog.cpp.

References counter, vuBasicUtility::DrawAgain(), vuBasicUtility::getCurrentImage(), vuDVector< T >::getLength(), interpolate(), IsImgsLoaded(), m_camera, m_camera_vector, m_currentframe, m_frames_played_txt, m_Gui, m_img_fstart, m_PPMHandler, m_time_delay, m_time_vector, m_total_time, OpenGIFile(), vuPPM::SaveImage(), vuCamera::set_defaults(), vuKF_frames_played_msg_, vuKF_precision_digits, and vuKF_render_time_msg.

Referenced by PlayFunc().

Here is the call graph for this function:

void vuKeyFramerDialog::clear_vectors  )  [protected]
 

This will clear the camera and time lists.

Definition at line 2621 of file vuKeyFramerDialog.cpp.

References vuDVector< T >::getLength(), m_camera_vector, m_time_vector, and vuDVector< T >::removeRange().

Here is the call graph for this function:

void vuKeyFramerDialog::Close  )  [virtual]
 

Definition at line 366 of file vuKeyFramerDialog.cpp.

bool vuKeyFramerDialog::Destroy  )  [virtual]
 

Definition at line 372 of file vuKeyFramerDialog.cpp.

float vuKeyFramerDialog::get_frame_number float  time  )  [protected]
 

This will return a frame value given time.

frame may be a float which will indicate how much to interpolate between two other frames

Definition at line 2631 of file vuKeyFramerDialog.cpp.

References bisect_time_vector_search(), vuDVector< T >::getLength(), and m_time_vector.

Referenced by PlayNextFrame().

Here is the call graph for this function:

bool vuKeyFramerDialog::IsFastForwarding  ) 
 

This returns true if there is a key frame animation that is playing and is being fastforwarded.

Otherwise, this returns false.

NB, this only applies to key frames, not prerendered videos, it says nothing about whether or not a prerendered video is playing and fastforwarding

Definition at line 386 of file vuKeyFramerDialog.cpp.

Referenced by OnFastForward(), OnPlay(), and OnRewind().

bool vuKeyFramerDialog::IsImgsLoaded  ) 
 

This returns true if the animator has a video file loaded into memory that it can play from, otherwise it returns false.

Definition at line 392 of file vuKeyFramerDialog.cpp.

Referenced by BurstPlayGI(), OpenGIFile(), and PlayFromImages().

bool vuKeyFramerDialog::IsKFBouncing  ) 
 

This returns true if the key frame animation that is currently playing (or would be playing if one were started) is bouncing.

This returns false otherwise.

Bouncing means that when the animation reaches either end in time (either the maximum or the minimum time that it is allowed to be at), then it will reverse direction and play in the reverse direction.

Definition at line 398 of file vuKeyFramerDialog.cpp.

References m_kf_bounce.

Referenced by PlayNextFrame().

bool vuKeyFramerDialog::IsKFLooping  ) 
 

This returns true if the key frame animation that is currently playing ( or would be playing if one were started) is looping.

This returns false otherwise.

Looping means that when the time of the animation reaches either end of the time scale associated with the animation, the current time is set to the other end, and the animation will continue playing.

Definition at line 404 of file vuKeyFramerDialog.cpp.

References m_kf_loop.

Referenced by PlayNextFrame().

bool vuKeyFramerDialog::IsKFReversing  ) 
 

This return true if the key frame animation that is currently playing (or would be playing if one were started) is reversing.

This returns false otherwise.

reversing means that it is travelling backwards in time at the regular speed.

Definition at line 410 of file vuKeyFramerDialog.cpp.

Referenced by OnFastForward(), OnPlay(), and OnRewind().

bool vuKeyFramerDialog::IsLoaded  ) 
 

This returns true if the animator has a key frame file loaded into memory that it can play from, otherwise, it returns false.

Definition at line 416 of file vuKeyFramerDialog.cpp.

Referenced by OnClose(), OnLoad(), OnPlay(), OnRecord(), OnSave(), and PlayFunc().

bool vuKeyFramerDialog::IsPaused  ) 
 

This returns true if the animator is not currently paused while playing back an animation, and returns false otherwise.

Definition at line 422 of file vuKeyFramerDialog.cpp.

Referenced by OnFastForward(), OnPause(), OnPlay(), OnRewind(), and PlayNextFrame().

bool vuKeyFramerDialog::IsPlaying  ) 
 

This returns true if the animator is currently playing back an animation (if this animation is being played from key frames, but not prerendered video), and returns false otherwise.

Definition at line 428 of file vuKeyFramerDialog.cpp.

Referenced by OnClose(), OnFastForward(), OnPlay(), OnPlayFromImages(), OnRewind(), OnVideoPlay(), PlayInTime(), and PlayNextFrame().

bool vuKeyFramerDialog::IsPlayingImgs  ) 
 

This returns true if the animator is currently playing an animation from prerendered videos, and returns false otherwise.

Definition at line 434 of file vuKeyFramerDialog.cpp.

Referenced by IsVideoPlaying(), OnPlayFromImages(), and OnVideoPlay().

bool vuKeyFramerDialog::IsRecording  ) 
 

This returns true if the animator is currently recording an animation (that is, it's recording key frames to a key frame file), false otherwise.

Definition at line 440 of file vuKeyFramerDialog.cpp.

Referenced by OnClose(), OnLoad(), OnPlay(), OnPlayFromImages(), OnRecord(), OnSave(), OnTakeShot(), and OnVideoPlay().

bool vuKeyFramerDialog::IsRewinding  ) 
 

This returns true if the animator is currently rewinding through a key framed animation, otherwise it returns false.

NB, this returns false if the prerendered video part is rewinding, please note the distinction between the two different rewinds.

Definition at line 446 of file vuKeyFramerDialog.cpp.

Referenced by OnFastForward(), OnPlay(), and OnRewind().

bool vuKeyFramerDialog::IsStopped  ) 
 

This returns true if the animator is stopped (the key frames, not the prerendered video), but it may return false if it is not playing something...

and returns false otherwise

Definition at line 452 of file vuKeyFramerDialog.cpp.

Referenced by PlayNextFrame().

bool vuKeyFramerDialog::IsVideoBouncing  ) 
 

This returns true if the animation that is currently playing is bouncing (or would be bouncing if one were to be started).

This returns false otherwise.

Bouncing means that when the time reaches either ot the time extremes, it reverses direction and continues playing.

Note that this is different than IsKFBouncing ().

Definition at line 476 of file vuKeyFramerDialog.cpp.

References m_kf_bounce, and m_vid_txt.

bool vuKeyFramerDialog::IsVideoFastForwarding  ) 
 

This returns true if the animator is currently fastforwarding through a prerendered video animation, and returns false otherwise.

NB, this may return false if a key frame file is loaded and is being played, and is fastworded since there is a difference between key frame and prerendered

Definition at line 458 of file vuKeyFramerDialog.cpp.

Referenced by OnPlayFromImages(), OnVideoFastForward(), OnVideoPlay(), OnVideoRewind(), and PlayNextImage().

bool vuKeyFramerDialog::IsVideoLooping  ) 
 

This returns true if the animator is currently looping it's plays of prerendered video animations, and returns false otherwise.

Looping means that when the animation reaches one time extreme, the time is adjusted to be as if it were at the other and the animation continues (ie, it repeats what it's been playing).

Note, this says nothing about what the key frames are doing.

Definition at line 485 of file vuKeyFramerDialog.cpp.

References m_kf_loop, and m_vid_txt.

bool vuKeyFramerDialog::IsVideoPaused  ) 
 

This returns true if the animator is playing a prerendered video and that video is paused, and will return false otherwise (NB, there is a distinction between this and IsPaused, namely the latter is on key frames, and the former is pregenerated).

Definition at line 464 of file vuKeyFramerDialog.cpp.

Referenced by OnPlayFromImages(), OnVideoFastForward(), OnVideoPause(), OnVideoPlay(), OnVideoRewind(), and PlayNextImage().

bool vuKeyFramerDialog::IsVideoPlaying  ) 
 

This returns true if there is a video playing, and false otherwise.

Note that this is different than if a key frame is playing, since they are two different things

Definition at line 470 of file vuKeyFramerDialog.cpp.

References IsPlayingImgs().

Referenced by OnPlayFromImages(), OnVideoClose(), OnVideoFastForward(), OnVideoPause(), OnVideoPlay(), and OnVideoRewind().

Here is the call graph for this function:

bool vuKeyFramerDialog::IsVideoReversing  ) 
 

This returns true if there is a video playing in reverse direction at the normal speed of play, and false otherwise.

Note that this is different that IsKFReversing ()

Definition at line 494 of file vuKeyFramerDialog.cpp.

Referenced by OnVideoFastForward(), OnVideoPlay(), OnVideoRewind(), and PlayNextImage().

bool vuKeyFramerDialog::IsVideoRewinding  ) 
 

This returns true if there is a video rewinding and false otherwise.

Note that this is different that is a key frame is rewinding, since they are two different processes

Definition at line 500 of file vuKeyFramerDialog.cpp.

Referenced by OnPlayFromImages(), OnVideoFastForward(), OnVideoPlay(), OnVideoRewind(), and PlayNextImage().

void vuKeyFramerDialog::LoadFunc  )  [protected]
 

This will load key frame animation files after prompting the user to specify which one to load.

Definition at line 1912 of file vuKeyFramerDialog.cpp.

References vuDVector< T >::getLength(), load_WithTime(), m_camera, m_camera_vector, m_loaded_txt, m_time_vector, vuDVector< T >::removeRange(), setIsLoaded(), vuKF_default_keyframe_save_dir_, vuKF_default_recorded_ext_, and vuKF_default_vuKFFileDlg_msg_.

Referenced by OnLoad().

Here is the call graph for this function:

void vuKeyFramerDialog::OnAutoShot wxCommandEvent &  ev  )  [protected]
 

This function will be called every time a timer event occurs.

ie, if when the animator is playing back a series of pregenerated images, and the animator has a break, then the animator will hold pending the timer interrupt going off, and this function will return it to where it should be.

This may not be implemented as it generates frames without control from the user...

Definition at line 771 of file vuKeyFramerDialog.cpp.

void vuKeyFramerDialog::OnClose wxCommandEvent &  ev  )  [protected]
 

This function will close the key frame file that has currently been loaded or is currently being recorded to.

It will not save a key frame file that is being recorded to... but it will prompt the user to find out if he/she wishes to save it, and if so, will instead go to OnSave to close it

Definition at line 776 of file vuKeyFramerDialog.cpp.

References vuDVector< T >::getLength(), IsLoaded(), IsPlaying(), IsRecording(), m_camera_vector, m_loaded_txt, m_save, m_takeshot, m_time_vector, m_vid_txt, OnSave(), OnStop(), OnVideoClose(), vuDVector< T >::removeRange(), setIsLoaded(), setIsPlaying(), setIsRecording(), and vuKF_default_curr_loaded_msg.

Referenced by OnKFSelect(), OnLoad(), and OnVideoSelect().

Here is the call graph for this function:

void vuKeyFramerDialog::OnFastForward wxCommandEvent &  ev  )  [protected]
 

This code will be called when a key frame file is playing and the fast forward button has been pressed.

Note that this will have no effect if the file is already being rewound.

If the animation is already fast forwarding, then this will return the animation to regular speed.

Definition at line 835 of file vuKeyFramerDialog.cpp.

References IsFastForwarding(), IsKFReversing(), IsPaused(), IsPlaying(), IsRewinding(), m_kf_status_txt, m_playwatch, m_vid_txt, OnPause(), OnPlay(), OnRewind(), OnVideoFastForward(), vuStopWatch::setIsFastForwarding(), setIsFastForwarding(), vuStopWatch::setIsReversing(), and vuKF_status_msg.

Referenced by OnPlay(), and OnRewind().

Here is the call graph for this function:

void vuKeyFramerDialog::OnKFBounce wxCommandEvent &  ev  )  [protected]
 

This code will be called whenever the user chagnes the Key Frame side's Bounce check box.

This will set stop key frame looping when this is checked.

Definition at line 886 of file vuKeyFramerDialog.cpp.

References m_kf_bounce, m_kf_loop, m_playwatch, m_vid_play_timer, m_vid_txt, OnVideoBounce(), vuStopWatch::setIsBouncing(), and vuStopWatch::setIsLooping().

Here is the call graph for this function:

void vuKeyFramerDialog::OnKFLoop wxCommandEvent &  ev  )  [protected]
 

This code will be called whenever the user chagnes the Key Frame side's Loop check box.

This will set stop key frame bouncing when this is checked.

Definition at line 907 of file vuKeyFramerDialog.cpp.

References m_kf_bounce, m_kf_loop, m_playwatch, m_vid_play_timer, m_vid_txt, OnVideoLoop(), vuStopWatch::setIsBouncing(), and vuStopWatch::setIsLooping().

Here is the call graph for this function:

void vuKeyFramerDialog::OnKFSelect wxCommandEvent &  ev  )  [protected]
 

Definition at line 928 of file vuKeyFramerDialog.cpp.

References m_burstplay, m_genimages, m_kf_bounce, m_kf_loop, m_record, m_save, m_takeshot, m_vid_txt, OnClose(), OnStop(), OnVideoClose(), and OnVideoStop().

Here is the call graph for this function:

void vuKeyFramerDialog::OnLoad wxCommandEvent &  ev  )  [protected]
 

This Function will be called when the Key Frame load button is pressed.

This will not allow to load another file when another is already opened by OnLoad or OnRecord.

This loads vuKeyFrame descriptions...

Definition at line 969 of file vuKeyFramerDialog.cpp.

References IsLoaded(), IsRecording(), LoadFunc(), m_vid_txt, OnClose(), OnSave(), and OnVideoLoad().

Referenced by OnPlay(), and PlayFunc().

Here is the call graph for this function:

void vuKeyFramerDialog::OnPause wxCommandEvent &  ev  )  [protected]
 

This function will be called when the Key Frame pause button is pressed.

This will Pause the key frame animation that is currently being played

This will not pause any prerendered animation that is being played.

This will need threads to be properely working before it works.

Definition at line 1004 of file vuKeyFramerDialog.cpp.

References IsPaused(), m_playwatch, m_vid_txt, OnVideoPause(), vuStopWatch::Pause(), vuStopWatch::Resume(), and setIsPaused().

Referenced by OnFastForward(), OnPlay(), OnRewind(), and run().

Here is the call graph for this function:

void vuKeyFramerDialog::OnPlay wxCommandEvent &  ev  )  [protected]
 

This function will be called when the Key Frame play button has been pressed.

This will Play the Key Frame Animation that is currently loaded.

If no Key frame animation has been loaded, then it will also load one after getting the user to specify which file.

This will not play any prerendered video that has been loaded.

This will not play while any prerendered video is playing.

If "Save Animation" has been selected by the user, generate the images at a frame rate of "frame rate" and save this animation to a video file, so that it may be played back later.

If "Max Speed/KeyFrames Only" has been selected by the user, this will only play the key frames and will play everyone of the key frames.

This will also output the total render time of the operation to "Render Time:" so that the user can compare with other times of other methods on the same animation (if they use the same camera of course).

Definition at line 1023 of file vuKeyFramerDialog.cpp.

References IsFastForwarding(), IsKFReversing(), IsLoaded(), IsPaused(), IsPlaying(), IsRecording(), IsRewinding(), m_camera, m_vid_txt, mb_play, NULL, OnFastForward(), OnLoad(), OnPause(), OnPlayFromImages(), OnRewind(), run(), setIsKFReversing(), setIsPaused(), and setIsStopped().

Referenced by OnFastForward(), and OnRewind().

Here is the call graph for this function:

void vuKeyFramerDialog::OnPlayFromImages wxCommandEvent &  ev  )  [protected]
 

This function will be called when the video play button has been pressed.

This will Play the prerendered video that has is currently loaded.

If no prerendered video has been loaded, then this will load one after prompting the user to specify which one should be loaded.

This will not play and key frame files are playing.

Definition at line 1131 of file vuKeyFramerDialog.cpp.

References vuBasicUtility::getCurrentImage(), IsPlaying(), IsPlayingImgs(), IsRecording(), IsVideoFastForwarding(), IsVideoPaused(), IsVideoPlaying(), IsVideoRewinding(), m_Gui, PlayFromImages(), setIsPlayingImgs(), setIsVideoFastForwarding(), setIsVideoPaused(), setIsVideoPlaying(), and setIsVideoRewinding().

Referenced by OnPlay(), OnVideoFastForward(), and OnVideoRewind().

Here is the call graph for this function:

void vuKeyFramerDialog::OnRecord wxCommandEvent &  ev  )  [protected]
 

This function will be called when the key frame record button has been pressed.

This will prompt the user for a file to record to, and will record a Key frame sequence to the specified file.

This will not record while another key frame file has been loaded.

This will not record while another key frame file is being recorded to.

Definition at line 1214 of file vuKeyFramerDialog.cpp.

References IsLoaded(), IsRecording(), m_save, m_takeshot, RecordFunc(), setIsPaused(), and setIsRecording().

Here is the call graph for this function:

void vuKeyFramerDialog::OnRewind wxCommandEvent &  ev  )  [protected]
 

This code will be called when the key frame rewind button has been pressed It will start rewinding the playing animation when it is pressed.

If the animation is already rewinding, then this will set the speed back to normal and the direction back to normal too.

If no animation is playing, this will have no effect.

Definition at line 1244 of file vuKeyFramerDialog.cpp.

References IsFastForwarding(), IsKFReversing(), IsPaused(), IsPlaying(), IsRewinding(), m_kf_status_txt, m_playwatch, m_vid_txt, OnFastForward(), OnPause(), OnPlay(), OnVideoRewind(), vuStopWatch::setIsReversing(), vuStopWatch::setIsRewinding(), setIsRewinding(), and vuKF_status_msg.

Referenced by OnFastForward(), and OnPlay().

Here is the call graph for this function:

void vuKeyFramerDialog::OnSave wxCommandEvent &  ev  )  [protected]
 

This function will be called when the key frame record button has been pressed.

This will save and close the key frame file that has currently been loaded.

Definition at line 1287 of file vuKeyFramerDialog.cpp.

References IsLoaded(), IsRecording(), m_save, m_takeshot, and SaveFunc().

Referenced by OnClose(), and OnLoad().

Here is the call graph for this function:

void vuKeyFramerDialog::OnStop wxCommandEvent &  ev  )  [protected]
 

This function will be called when the key frame stop button has been pressed.

This will stop and close the currently loaded or playing key frame file.

Definition at line 1321 of file vuKeyFramerDialog.cpp.

References vuCamera::IsRecording(), m_camera, m_currentframe, m_kf_status_txt, m_save, m_takeshot, OnVideoStop(), SaveFunc(), setIsFastForwarding(), setIsPaused(), setIsPlaying(), setIsRecording(), setIsRewinding(), vuCamera::stop_recording(), and vuKF_status_msg.

Referenced by OnClose(), OnKFSelect(), OnVideoSelect(), and run().

Here is the call graph for this function:

void vuKeyFramerDialog::OnTakeShot wxCommandEvent &  ev  )  [protected]
 

This function will be called when the Key frame take shot button has been pressed.

This will add the current frame to the list of frames to be recorded.

This will add it to the list of those scheduled to be saved.

The timestamp will be that of since you started recording

This will have no effect except when you are recording a key frame file.

Definition at line 1361 of file vuKeyFramerDialog.cpp.

References vuDVector< T >::add(), vuCamera::create_new(), vuHWTimer::getElapsedTimeFloat(), IsRecording(), m_camera, m_camera_vector, m_time_vector, m_timer, and time_t.

Referenced by RecordInTime().

Here is the call graph for this function:

void vuKeyFramerDialog::OnVideoBounce wxCommandEvent &  ev  )  [protected]
 

This code will be called whenever the user chagnes the Video side's Bounce check box.

This will set stop video looping when this is checked.

Definition at line 1388 of file vuKeyFramerDialog.cpp.

References m_kf_bounce, m_vid_play_timer, vuStopWatch::setIsBouncing(), and vuStopWatch::setIsLooping().

Referenced by OnKFBounce().

Here is the call graph for this function:

void vuKeyFramerDialog::OnVideoClose wxCommandEvent &  ev  )  [protected]
 

this is the other of the two cameras that will be used by the PlayInTime () method to interpolate between key frames

This will close the currently loaded animation file.

This is stored here so that I don't have to allocate new cameras everytime (as would be the case if I stored them locally)

Definition at line 1402 of file vuKeyFramerDialog.cpp.

References vuDVector< T >::getLength(), IsVideoPlaying(), m_imgfp, m_kf_status_txt, m_loaded_txt, OnVideoStop(), vuDVector< T >::removeRange(), setIsImgsLoaded(), tfilenamevector, ttimevector, vuKF_default_curr_loaded_msg, and vuKF_status_msg.

Referenced by OnClose(), OnKFSelect(), OnVideoSelect(), and OpenGIFile().

Here is the call graph for this function:

void vuKeyFramerDialog::OnVideoFastForward wxCommandEvent &  ev  )  [protected]
 

This function will be called when the video fast forward button has been pressed.

If a video is playing, this will start fast forwarding. If the video is already fast forwarding, this will return it to normal speed.

Definition at line 1439 of file vuKeyFramerDialog.cpp.

References IsVideoFastForwarding(), IsVideoPaused(), IsVideoPlaying(), IsVideoReversing(), IsVideoRewinding(), m_kf_status_txt, m_vid_play_timer, OnPlayFromImages(), OnVideoPause(), OnVideoReverse(), OnVideoRewind(), vuStopWatch::setIsFastForwarding(), setIsVideoFastForwarding(), and vuKF_status_msg.

Referenced by OnFastForward(), OnVideoPlay(), and OnVideoRewind().

Here is the call graph for this function:

void vuKeyFramerDialog::OnVideoLoad wxCommandEvent &  ev  )  [protected]
 

This function will be called when the video Load button has been pressed.

This open a video file to be played, as long as no other video file is currently loaded.

Definition at line 1477 of file vuKeyFramerDialog.cpp.

References m_imgfp, OpenGIFile(), and setIsImgsLoaded().

Referenced by OnLoad().

Here is the call graph for this function:

void vuKeyFramerDialog::OnVideoLoop wxCommandEvent &  ev  )  [protected]
 

This code will be called whenever the user changes the Video side's loop check box.

This will set stop video bouncing when this is checked.

Definition at line 1485 of file vuKeyFramerDialog.cpp.

References m_kf_loop, m_vid_play_timer, vuStopWatch::setIsBouncing(), and vuStopWatch::setIsLooping().

Referenced by OnKFLoop().

Here is the call graph for this function:

void vuKeyFramerDialog::OnVideoPause wxCommandEvent &  ev  )  [protected]
 

This function will be called when the video pause button has been pressed.

This will pause the video that is playing.

Currently, this has no effect since threads are not working properely.

Definition at line 1499 of file vuKeyFramerDialog.cpp.

References IsVideoPaused(), IsVideoPlaying(), m_kf_status_txt, m_vid_play_timer, vuStopWatch::Pause(), vuStopWatch::Resume(), setIsVideoPaused(), and vuKF_status_msg.

Referenced by OnPause(), OnVideoFastForward(), OnVideoPlay(), and OnVideoRewind().

Here is the call graph for this function:

void vuKeyFramerDialog::OnVideoPlay wxCommandEvent &  ev  )  [protected]
 

This function will be called when the video play button has been pressed.

This will play the video that has been loaded.

If no video is currently loaded, then this will prompt the user to provide a video to load and will play that.

Definition at line 1524 of file vuKeyFramerDialog.cpp.

References IsPlaying(), IsPlayingImgs(), IsRecording(), IsVideoFastForwarding(), IsVideoPaused(), IsVideoPlaying(), IsVideoReversing(), IsVideoRewinding(), m_kf_status_txt, OnVideoFastForward(), OnVideoPause(), OnVideoReverse(), OnVideoRewind(), PlayFromImages(), setIsPlayingImgs(), setIsVideoFastForwarding(), setIsVideoRewinding(), and vuKF_status_msg.

Here is the call graph for this function:

void vuKeyFramerDialog::OnVideoReverse wxCommandEvent &  ev  )  [protected]
 

Definition at line 1615 of file vuKeyFramerDialog.cpp.

References vuStopWatch::IsReversing(), m_kf_status_txt, m_vid_play_timer, vuStopWatch::setIsReversing(), and vuKF_status_msg.

Referenced by OnVideoFastForward(), OnVideoPlay(), and OnVideoRewind().

Here is the call graph for this function:

void vuKeyFramerDialog::OnVideoRewind wxCommandEvent &  ev  )  [protected]
 

This function will be called when the video Rewind button has been pressed.

If a video is currently playing, this will start the video rewinding.

If the video is already rewinding, it will stop the rewinding and return the play to normal speed and direction.

On all other cases, this will have no effect

Definition at line 1623 of file vuKeyFramerDialog.cpp.

References IsVideoFastForwarding(), IsVideoPaused(), IsVideoPlaying(), IsVideoReversing(), IsVideoRewinding(), m_kf_status_txt, m_vid_play_timer, OnPlayFromImages(), OnVideoFastForward(), OnVideoPause(), OnVideoReverse(), vuStopWatch::setIsRewinding(), setIsVideoRewinding(), and vuKF_status_msg.

Referenced by OnRewind(), OnVideoFastForward(), and OnVideoPlay().

Here is the call graph for this function:

void vuKeyFramerDialog::OnVideoSelect wxCommandEvent &  ev  )  [protected]
 

Definition at line 1660 of file vuKeyFramerDialog.cpp.

References m_burstplay, m_genimages, m_kf_bounce, m_kf_loop, m_kf_txt, m_record, m_save, m_takeshot, OnClose(), OnStop(), OnVideoClose(), and OnVideoStop().

Here is the call graph for this function:

void vuKeyFramerDialog::OnVideoStop wxCommandEvent &  ev  )  [protected]
 

This function will be called when the video stop button has been pressed.

This will stop the video that is playing.

If no video is currently playing, this will have no effect.

Definition at line 1701 of file vuKeyFramerDialog.cpp.

References m_kf_status_txt, setIsPlayingImgs(), setIsVideoFastForwarding(), setIsVideoPaused(), setIsVideoRewinding(), and vuKF_status_msg.

Referenced by OnKFSelect(), OnStop(), OnVideoClose(), and OnVideoSelect().

Here is the call graph for this function:

FILE * vuKeyFramerDialog::OpenGIFile bool  write = false  )  [protected]
 

This will open an animation file (video).

It will open for writing if write is true, and will set it to false otherwise

Definition at line 2660 of file vuKeyFramerDialog.cpp.

References vuDVector< T >::add(), clear_blanks(), get_next_comma(), IsImgsLoaded(), m_img_fstart, m_imgfp, m_loaded_txt, OnVideoClose(), setIsImgsLoaded(), tfilenamevector, ttimevector, vuKF_default_animated_ext_, vuKF_default_curr_loaded_msg, and vuKF_default_keyframe_save_dir_.

Referenced by BurstPlayGI(), OnVideoLoad(), and PlayFromImages().

Here is the call graph for this function:

void vuKeyFramerDialog::PlayFromImages bool  fromevttimer = false  )  [protected]
 

This will play back a prerendered video inside the method.

Definition at line 1971 of file vuKeyFramerDialog.cpp.

References vuBasicUtility::getCurrentImage(), vuDVector< T >::getLength(), IsImgsLoaded(), m_Gui, m_kf_status_txt, m_play_video_frame, m_play_video_size, m_play_video_times, m_play_video_ttime, m_vid_play_timer, OpenGIFile(), PlayNextImage(), vuStopWatch::setMaxTime(), vuStopWatch::Start(), ttimevector, and vuKF_status_msg.

Referenced by OnPlayFromImages(), and OnVideoPlay().

Here is the call graph for this function:

void vuKeyFramerDialog::PlayFunc  )  [protected]
 

This will play an animation from key frame files, and will load.

The animation if necessary.

Definition at line 2019 of file vuKeyFramerDialog.cpp.

References BurstPlay(), BurstPlayGI(), vuDVector< T >::getLength(), IsLoaded(), m_burstplay, m_camera_vector, m_currentframe, m_genimages, m_playwatch, m_time_vector, OnLoad(), PlayInTime(), setIsPaused(), setIsPlaying(), setIsRecording(), setIsStopped(), and vuStopWatch::setMaxTime().

Referenced by run().

Here is the call graph for this function:

void vuKeyFramerDialog::PlayInTime  )  [protected]
 

This will play an animation from key frame files, and will do so with.

Interpolation in real time

Definition at line 2063 of file vuKeyFramerDialog.cpp.

References vuHWTimer::getElapsedTimeFloat(), vuDVector< T >::getLength(), IsPlaying(), m_camera_vector, m_kf_status_txt, m_play_camera_1, m_play_camera_2, m_play_counter, m_play_time, m_play_timer, m_play_times, m_playwatch, PlayNextFrame(), vuStopWatch::Start(), and vuKF_status_msg.

Referenced by PlayFunc().

Here is the call graph for this function:

void vuKeyFramerDialog::PlayNextFrame  )  [protected]
 

This will play the next frame of a key frame animation...

It will interpolated if the curent time indicates that it is between frames.

It will then set off a timer interrupt if it needs to play again, and will wait for vuKF_play_delay milliseconds before playing the next image.

Definition at line 2097 of file vuKeyFramerDialog.cpp.

References vuBasicUtility::DrawAgain(), get_frame_number(), vuDVector< T >::getLength(), interpolate(), vuStopWatch::IsFastForwarding(), IsKFBouncing(), IsKFLooping(), IsPaused(), IsPlaying(), vuStopWatch::IsReversing(), vuStopWatch::IsRewinding(), IsStopped(), m_camera, m_camera_vector, m_fm_rate_txt, m_frames_played_txt, m_Gui, m_kf_status_txt, m_play_camera_1, m_play_camera_2, m_play_counter, m_play_time, m_play_times, m_playwatch, m_time_vector, m_total_time, setIsFastForwarding(), setIsKFReversing(), setIsPlaying(), setIsRewinding(), vuStopWatch::setMaxTime(), vuStopWatch::Start(), vuStopWatch::Time(), vuStopWatch::TotalTime(), vuKF_play_delay, vuKF_precision_digits, vuKF_regular_pause_delay, and vuKF_status_msg.

Referenced by PlayInTime(), and TimerEvent().

Here is the call graph for this function:

void vuKeyFramerDialog::PlayNextImage  )  [protected]
 

This will play the next frame of a prerendered video file.

When it is done, it will initialize a timer to wait for, and when the timer goes off, it will play itself again.

Definition at line 2245 of file vuKeyFramerDialog.cpp.

References debugtimer, vuBasicUtility::DrawFromImage(), vuImage::get_extents(), vuBasicUtility::getCurrentImage(), vuDVector< T >::getLength(), vuStopWatch::IsFastForwarding(), vuStopWatch::IsReversing(), vuStopWatch::IsRewinding(), IsVideoFastForwarding(), IsVideoPaused(), IsVideoReversing(), IsVideoRewinding(), m_fm_rate_txt, m_frames_played_txt, m_Gui, m_kf_bounce, m_kf_loop, m_kf_status_txt, m_play_video_buf, m_play_video_frame, m_play_video_size, m_play_video_times, m_play_video_ttime, m_PPMHandler, m_total_time, m_vid_play_timer, NULL, vuPPM::ReadImage(), vuPPM::ReadImageFromBuffer(), setIsPlayingImgs(), vuStopWatch::Start(), tfilenamevector, vuStopWatch::Time(), vuStopWatch::TotalTime(), ttimevector, vuKF_frames_played_msg_, vuKF_precision_digits, vuKF_regular_pause_delay, vuKF_spd_mul, and vuKF_status_msg.

Referenced by PlayFromImages(), and TimerEvent().

Here is the call graph for this function:

void vuKeyFramerDialog::rebuildCustomSizer  )  [protected]
 

Calls buildCustomSizer and refreshes Layout of the dialog.

Definition at line 2584 of file vuKeyFramerDialog.cpp.

References buildCustomSizer(), m_CustomSizer, and m_MainSizer.

Here is the call graph for this function:

void vuKeyFramerDialog::RecordFunc  )  [protected]
 

This will start recording an animation of key frame files.

Definition at line 2504 of file vuKeyFramerDialog.cpp.

References vuHWTimer::getElapsedTimeFloat(), vuDVector< T >::getLength(), m_camera, m_camera_vector, m_kf_status_txt, m_loaded_txt, m_time_vector, m_timer, record_with_time(), vuDVector< T >::removeRange(), setIsRecording(), time_t, vuKF_default_keyframe_save_dir_, vuKF_default_recorded_ext_, vuKF_default_vuKFFileDlg_msg_, and vuKF_status_msg.

Referenced by OnRecord().

Here is the call graph for this function:

void vuKeyFramerDialog::RecordInTime  )  [protected]
 

This was for automatic snap shots, but I don't think that I'll use it yet...

not really necessary, see the discussion on autoahots...

Definition at line 2538 of file vuKeyFramerDialog.cpp.

References m_autoshot, and OnTakeShot().

Referenced by TimerEvent().

Here is the call graph for this function:

void vuKeyFramerDialog::run int  whatsup,
void *  data
[virtual]
 

This function is the entry point for any threads through vuThread (so that it can run independently, and other stuff can be given time to run, like the event handlers so that the user can tell this to stop).

Implements vuThread.

Definition at line 508 of file vuKeyFramerDialog.cpp.

References mb_run, OnPause(), OnStop(), and PlayFunc().

Referenced by OnPlay().

Here is the call graph for this function:

void vuKeyFramerDialog::SaveFunc bool  writechanges = false  )  [protected]
 

This will save a key frame animation file.

If write changes is false, it will not update the file... It's strange, but I did it for the recordings...

Definition at line 2549 of file vuKeyFramerDialog.cpp.

References vuDVector< T >::getLength(), vuCamera::IsRecording(), m_camera, m_camera_vector, m_loaded_txt, m_time_vector, vuDVector< T >::removeRange(), setIsLoaded(), setIsPlaying(), setIsRecording(), vuCamera::stop_recording(), TakeSnapShotWithTime(), and vuKF_default_curr_loaded_msg.

Referenced by OnSave(), and OnStop().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsFastForwarding bool  isit  )  [protected]
 

This function sets the return of IsFastForwarding () to be isit (ie, this sets the state of the KeyFramer Video FastForwarding to be isit).

Definition at line 548 of file vuKeyFramerDialog.cpp.

References m_playwatch, mb_fast_forward, vuStopWatch::setIsFastForwarding(), setIsKFReversing(), and setIsRewinding().

Referenced by OnFastForward(), OnStop(), PlayNextFrame(), setIsKFReversing(), setIsPlaying(), and setIsRewinding().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsImgsLoaded bool  isit  )  [protected]
 

This function sets the state {is prerendered images loaded} to be the same value as isit.

ie, the will set the return value of IsImgsLoaded to be isit.

Definition at line 564 of file vuKeyFramerDialog.cpp.

References mb_imgs_loaded.

Referenced by OnVideoClose(), OnVideoLoad(), and OpenGIFile().

void vuKeyFramerDialog::setIsKFBouncing bool  isit  )  [protected]
 

This function sets the state of of the Key Frame Bouncing in an animation to be The same value as isit.

ie, this will set the return value of IsKFBouncing to be isit.

Definition at line 570 of file vuKeyFramerDialog.cpp.

References m_kf_bounce, m_kf_loop, m_playwatch, and vuStopWatch::setIsBouncing().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsKFLooping bool  isit  )  [protected]
 

This function sets the state of of the Key frame Looping in an animation to be The same value as isit.

ie, this will set the return value of IsKFLooping to be isit.

Definition at line 581 of file vuKeyFramerDialog.cpp.

References m_kf_bounce, m_kf_loop, m_playwatch, and vuStopWatch::setIsLooping().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsKFReversing bool  isit  )  [protected]
 

This function sets the state of of the KF Reversng in an animation to be The same value as isit.

ie, this will set the return value of IsKFReversing to be isit.

Definition at line 592 of file vuKeyFramerDialog.cpp.

References m_playwatch, mb_kf_reverse, setIsFastForwarding(), vuStopWatch::setIsReversing(), and setIsRewinding().

Referenced by OnPlay(), PlayNextFrame(), setIsFastForwarding(), setIsPlaying(), and setIsRewinding().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsLoaded bool  isit  )  [protected]
 

This function sets the state of a key frame file loaded to be the same value as isit.

ie, the will set the return value of IsLoaded to be isit.

Definition at line 607 of file vuKeyFramerDialog.cpp.

References mb_loaded.

Referenced by LoadFunc(), OnClose(), and SaveFunc().

void vuKeyFramerDialog::setIsPaused bool  isit  )  [protected]
 

This function sets the state of a key frame file being paused to be the same value as isit.

ie, the will set the return value of IsPaused to be isit.

Definition at line 613 of file vuKeyFramerDialog.cpp.

References m_playwatch, mb_pause, vuStopWatch::Pause(), and vuStopWatch::Resume().

Referenced by OnPause(), OnPlay(), OnRecord(), OnStop(), and PlayFunc().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsPlaying bool  isit  )  [protected]
 

This function sets the state of a key frame file being played to be the same value as isit.

ie, the will set the return value of IsPlaying to be isit.

Definition at line 624 of file vuKeyFramerDialog.cpp.

References m_playwatch, mb_play, vuStopWatch::Resume(), setIsFastForwarding(), setIsKFReversing(), and setIsRewinding().

Referenced by OnClose(), OnStop(), PlayFunc(), PlayNextFrame(), and SaveFunc().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsPlayingImgs bool  isit  )  [protected]
 

This function sets the state of a prerendered animation file loaded to be the same value as isit.

ie, the will set the return value of IsPlayingImgs to be isit.

Definition at line 640 of file vuKeyFramerDialog.cpp.

References mb_play_from_images.

Referenced by OnPlayFromImages(), OnVideoPlay(), OnVideoStop(), PlayNextImage(), and setIsVideoPlaying().

void vuKeyFramerDialog::setIsRecording bool  isit  )  [protected]
 

This function sets the state of a key frame file being recorded to to be the same value as isit.

ie, the will set the return value of IsRecording to be isit.

Definition at line 646 of file vuKeyFramerDialog.cpp.

References mb_record.

Referenced by OnClose(), OnRecord(), OnStop(), PlayFunc(), RecordFunc(), and SaveFunc().

void vuKeyFramerDialog::setIsRewinding bool  isit  )  [protected]
 

This function set the state of key frame rewinding to be the same value as isit.

is, this will set the return value of IsRewinding to isit.

Note that this is different than setIsVideoRewinding

Definition at line 750 of file vuKeyFramerDialog.cpp.

References m_playwatch, mb_rewind, setIsFastForwarding(), setIsKFReversing(), and vuStopWatch::setIsRewinding().

Referenced by OnRewind(), OnStop(), PlayNextFrame(), setIsFastForwarding(), setIsKFReversing(), and setIsPlaying().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsStopped bool  isit  )  [protected]
 

This function sets the state of a key frame file being stopped to to be the same value as isit.

ie, the will set the return value of IsStopped to be isit.

Definition at line 765 of file vuKeyFramerDialog.cpp.

References mb_stop.

Referenced by OnPlay(), and PlayFunc().

void vuKeyFramerDialog::setIsVideoBouncing bool  isit  )  [protected]
 

This function sets the state of of the Video Bouncing in an animation to be The same value as isit.

ie, this will set the reutrn value of IsVideoBouncing to be isit.

Definition at line 652 of file vuKeyFramerDialog.cpp.

References m_vid_play_timer, and vuStopWatch::setIsBouncing().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsVideoFastForwarding bool  isit  )  [protected]
 

This function will set the state of Video Fast Forwarding to be the same value as isit...

ie, this will set the return value of IsVideoFastForwarding to be isit.

note that this is different than setIsFastForwarding (bool isit);

Definition at line 667 of file vuKeyFramerDialog.cpp.

References m_vid_play_timer, mb_video_fast_forward, vuStopWatch::setIsFastForwarding(), setIsVideoReversing(), and setIsVideoRewinding().

Referenced by OnPlayFromImages(), OnVideoFastForward(), OnVideoPlay(), OnVideoStop(), setIsVideoPlaying(), setIsVideoReversing(), and setIsVideoRewinding().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsVideoLooping bool  isit  )  [protected]
 

This function sets the state of of the Video Looping in an animation to be The same value as isit.

ie, this will set the reutrn value of IsVideoLooping to be isit.

Definition at line 681 of file vuKeyFramerDialog.cpp.

References m_vid_play_timer, and vuStopWatch::setIsLooping().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsVideoPaused bool  isit  )  [protected]
 

This function will set the state of Video Paused to be the same value as isit.

ie, this will set the return value of IsVideoPaused to be isit

note that this is different than setIsPaused (bool isit);

Definition at line 696 of file vuKeyFramerDialog.cpp.

References m_vid_play_timer, mb_video_pause, vuStopWatch::Pause(), and vuStopWatch::Resume().

Referenced by OnPlayFromImages(), OnVideoPause(), and OnVideoStop().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsVideoPlaying bool  isit  )  [protected]
 

This function will set the state of Video Playing to be the same value as isit.

ie, this will set the return value of IsVideoPlaying to be isit.

note that this is different than setIsPlaying (bool isit)

Definition at line 707 of file vuKeyFramerDialog.cpp.

References setIsPlayingImgs(), setIsVideoFastForwarding(), setIsVideoReversing(), and setIsVideoRewinding().

Referenced by OnPlayFromImages().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsVideoReversing bool  isit  )  [protected]
 

This function sets the state of of the Video Reversing in an animation to be The same value as isit.

ie, this will set the reutrn value of IsVideoReversing to be isit.

Definition at line 735 of file vuKeyFramerDialog.cpp.

References m_vid_play_timer, mb_video_reverse, vuStopWatch::setIsReversing(), setIsVideoFastForwarding(), and setIsVideoRewinding().

Referenced by setIsVideoFastForwarding(), setIsVideoPlaying(), and setIsVideoRewinding().

Here is the call graph for this function:

void vuKeyFramerDialog::setIsVideoRewinding bool  isit  )  [protected]
 

This function will set the state of Video Rewinding to be the same value as isit.

ie, this will set the return value of IsVideoRewinding to be isit.

note that this is different than setIsRewinding (bool isit).

Definition at line 721 of file vuKeyFramerDialog.cpp.

References m_vid_play_timer, mb_video_rewind, vuStopWatch::setIsRewinding(), setIsVideoFastForwarding(), and setIsVideoReversing().

Referenced by OnPlayFromImages(), OnVideoPlay(), OnVideoRewind(), OnVideoStop(), setIsVideoFastForwarding(), setIsVideoPlaying(), and setIsVideoReversing().

Here is the call graph for this function:

void vuKeyFramerDialog::setup vuCamera cam,
vuBasicUtility UWin
 

This will set the camera that this utility operates on to be the one pointed to be cam, and the parent Gui to be UWin.

This way, you can change the camera that this will operate upon.

Definition at line 359 of file vuKeyFramerDialog.cpp.

References m_camera, and m_Gui.

Referenced by vuBasicUtility::onKeyboardKeyframer().

void vuKeyFramerDialog::TimerEvent  )  [protected]
 

This function will be called when a timer event occurs.

This function will process the timer event and from there call the function that should be called when the event has completed.

Definition at line 2780 of file vuKeyFramerDialog.cpp.

References PlayNextFrame(), PlayNextImage(), and RecordInTime().

Referenced by vuEvtGenerator::Notify().

Here is the call graph for this function:

bool vuKeyFramerDialog::TransferDataFromWindow  )  [inline, protected]
 

Part of the wxWindows architecture -- there is no data to transfer.

Definition at line 895 of file vuKeyFramerDialog.h.

bool vuKeyFramerDialog::TransferDataToWindow  )  [inline, protected]
 

Part of the wxWindows architecture -- there is no data to transfer.

Definition at line 897 of file vuKeyFramerDialog.h.


Friends And Related Function Documentation

friend class vuEvtGenerator [friend]
 

This class will generate the timer events and will call the event handler in this class.

Definition at line 297 of file vuKeyFramerDialog.h.


Member Data Documentation

int vuKeyFramerDialog::counter [protected]
 

Definition at line 1122 of file vuKeyFramerDialog.h.

Referenced by BurstPlayGI().

vuStopWatch vuKeyFramerDialog::debugtimer [protected]
 

This timer was used to work out the time taken by specific sections of code to run.

This was used so that I could figure out if my optimizations were any good or not, and so that I could speed up the video play back

Definition at line 1216 of file vuKeyFramerDialog.h.

Referenced by PlayNextImage().

wxCheckBox* vuKeyFramerDialog::m_autoshot [protected]
 

This is the checkbox to select if snapshots should be taken automatically.

Definition at line 949 of file vuKeyFramerDialog.h.

Referenced by RecordInTime().

wxCheckBox* vuKeyFramerDialog::m_burstplay [protected]
 

This is the checkbox to select if the key frame animator should play only key frames and do so as fast as it can.

Definition at line 950 of file vuKeyFramerDialog.h.

Referenced by OnKFSelect(), OnVideoSelect(), and PlayFunc().

vuCamera* vuKeyFramerDialog::m_camera [protected]
 

this is the default camera that the Key frame animator will read from and write to (this is a pointer to the camera used by the method to render from..

ie, it's the same camera as the user is manipulating through his renderer.

Definition at line 1148 of file vuKeyFramerDialog.h.

Referenced by BurstPlay(), BurstPlayGI(), LoadFunc(), OnPlay(), OnStop(), OnTakeShot(), PlayNextFrame(), RecordFunc(), SaveFunc(), and setup().

vuDVector<vuCamera*> vuKeyFramerDialog::m_camera_vector [protected]
 

This will be used to store The cameras (ie, key frame i's camera will be at m_camera_vector [i])/.

Definition at line 1190 of file vuKeyFramerDialog.h.

Referenced by BurstPlay(), BurstPlayGI(), clear_vectors(), LoadFunc(), OnClose(), OnTakeShot(), PlayFunc(), PlayInTime(), PlayNextFrame(), RecordFunc(), SaveFunc(), and ~vuKeyFramerDialog().

wxButton* vuKeyFramerDialog::m_close [protected]
 

This is the key frame close button.

Definition at line 929 of file vuKeyFramerDialog.h.

int vuKeyFramerDialog::m_currentframe [protected]
 

This is the current frame that we are playing in the key frame portion of the animator.

Definition at line 1119 of file vuKeyFramerDialog.h.

Referenced by BurstPlayGI(), OnStop(), and PlayFunc().

wxBoxSizer* vuKeyFramerDialog::m_CustomSizer [protected]
 

This can probably go.

Definition at line 925 of file vuKeyFramerDialog.h.

Referenced by rebuildCustomSizer().

wxPanel* vuKeyFramerDialog::m_divider [protected]
 

This is the dividing line on the screen between key frame handling and video handling.

Definition at line 965 of file vuKeyFramerDialog.h.

wxPanel* vuKeyFramerDialog::m_divider2 [protected]
 

This is the dividing line on the screen between key frame handling and video handling.

Definition at line 966 of file vuKeyFramerDialog.h.

wxBitmapButton* vuKeyFramerDialog::m_fastforward [protected]
 

This is the key frame fast forward button.

Definition at line 930 of file vuKeyFramerDialog.h.

wxStaticText* vuKeyFramerDialog::m_fm_rate [protected]
 

This is where the frame rate text identifier is stored (This will tell the user that the corresponding text box is where he inputs the frame rate.

Definition at line 994 of file vuKeyFramerDialog.h.

wxStaticText* vuKeyFramerDialog::m_fm_rate_txt [protected]
 

This displays the frame rate of the key frame handling section of the animator.

Definition at line 1007 of file vuKeyFramerDialog.h.

Referenced by BurstPlay(), PlayNextFrame(), and PlayNextImage().

wxStaticText* vuKeyFramerDialog::m_frames_played_txt [protected]
 

This will display the number of frames that have been played in the key frame portion of the animator.

Definition at line 998 of file vuKeyFramerDialog.h.

Referenced by BurstPlay(), BurstPlayGI(), PlayNextFrame(), and PlayNextImage().

wxCheckBox* vuKeyFramerDialog::m_genimages [protected]
 

This is the checkbox to select if a video should be generated of the animation.

Definition at line 952 of file vuKeyFramerDialog.h.

Referenced by OnKFSelect(), OnVideoSelect(), and PlayFunc().

vuBasicUtility* vuKeyFramerDialog::m_Gui [protected]
 

This is a pointer to the calling utility This is needed so that I can communicate with it probably when I need to (tell it to rerender, redisplay, etc).

Definition at line 1141 of file vuKeyFramerDialog.h.

Referenced by BurstPlay(), BurstPlayGI(), OnPlayFromImages(), PlayFromImages(), PlayNextFrame(), PlayNextImage(), and setup().

char* vuKeyFramerDialog::m_img_fstart [protected]
 

This is the filename of the animation that's being loaded into the video buffer.

Definition at line 1083 of file vuKeyFramerDialog.h.

Referenced by BurstPlayGI(), and OpenGIFile().

FILE* vuKeyFramerDialog::m_imgfp [protected]
 

This is a pointer to the file that is being loaded from.

Definition at line 1088 of file vuKeyFramerDialog.h.

Referenced by OnVideoClose(), OnVideoLoad(), and OpenGIFile().

wxCheckBox* vuKeyFramerDialog::m_kf_bounce [protected]
 

This is the checkbox that will be selected if the key framer should bounce on it's animations.

Definition at line 953 of file vuKeyFramerDialog.h.

Referenced by IsKFBouncing(), IsVideoBouncing(), OnKFBounce(), OnKFLoop(), OnKFSelect(), OnVideoBounce(), OnVideoSelect(), PlayNextImage(), setIsKFBouncing(), and setIsKFLooping().

wxCheckBox* vuKeyFramerDialog::m_kf_loop [protected]
 

This is the checkbox that will be selected if the key framer should loop on it's animations.

Definition at line 955 of file vuKeyFramerDialog.h.

Referenced by IsKFLooping(), IsVideoLooping(), OnKFBounce(), OnKFLoop(), OnKFSelect(), OnVideoLoop(), OnVideoSelect(), PlayNextImage(), setIsKFBouncing(), and setIsKFLooping().

wxStaticText* vuKeyFramerDialog::m_kf_status_txt [protected]
 

This displays the status of the key frame handling section of the animator (ie, playing, paused, fastforwarding, rewinding, etc).

Definition at line 1003 of file vuKeyFramerDialog.h.

Referenced by OnFastForward(), OnRewind(), OnStop(), OnVideoClose(), OnVideoFastForward(), OnVideoPause(), OnVideoPlay(), OnVideoReverse(), OnVideoRewind(), OnVideoStop(), PlayFromImages(), PlayInTime(), PlayNextFrame(), PlayNextImage(), and RecordFunc().

wxCheckBox* vuKeyFramerDialog::m_kf_txt [protected]
 

This displays the title of the key frame handling section of the animator.

Definition at line 1001 of file vuKeyFramerDialog.h.

Referenced by OnVideoSelect().

wxButton* vuKeyFramerDialog::m_load [protected]
 

This is the key frame load button.

Definition at line 931 of file vuKeyFramerDialog.h.

wxStaticText* vuKeyFramerDialog::m_loaded_txt [protected]
 

This displays the name of the key frame file that has been loaded into the key frame handling section of the animator.

Definition at line 1009 of file vuKeyFramerDialog.h.

Referenced by LoadFunc(), OnClose(), OnVideoClose(), OpenGIFile(), RecordFunc(), and SaveFunc().

wxBoxSizer* vuKeyFramerDialog::m_MainSizer [protected]
 

This is the main screen that will be written to by this dialog.

Definition at line 926 of file vuKeyFramerDialog.h.

Referenced by rebuildCustomSizer().

wxBitmapButton* vuKeyFramerDialog::m_pause [protected]
 

This is the key frame pause button.

Definition at line 932 of file vuKeyFramerDialog.h.

float vuKeyFramerDialog::m_pause_time [protected]
 

Definition at line 1096 of file vuKeyFramerDialog.h.

vuHWTimer vuKeyFramerDialog::m_pause_timer [protected]
 

This will be used to time the length of time that a pause has taken.

Definition at line 1202 of file vuKeyFramerDialog.h.

wxBitmapButton* vuKeyFramerDialog::m_play [protected]
 

This is the key frame play button.

Definition at line 933 of file vuKeyFramerDialog.h.

vuCamera* vuKeyFramerDialog::m_play_camera_1 [protected]
 

this is one of the two cameras that will be used by the PlayInTime () method to interpolate between key frames

This is stored here so that I don't have to allocate new cameras everytime (as would be the case if I stored them locally)

Definition at line 1155 of file vuKeyFramerDialog.h.

Referenced by PlayInTime(), and PlayNextFrame().

vuCamera* vuKeyFramerDialog::m_play_camera_2 [protected]
 

this is the other of the two cameras that will be used by the PlayInTime () method to interpolate between key frames

This is stored here so that I don't have to allocate new cameras everytime (as would be the case if I stored them locally)

Definition at line 1162 of file vuKeyFramerDialog.h.

Referenced by PlayInTime(), and PlayNextFrame().

int vuKeyFramerDialog::m_play_counter [protected]
 

This keeps track of how many frames were displayed in a key frame animation file.

This will help the user figure out the speed that they are achieving.

Definition at line 1123 of file vuKeyFramerDialog.h.

Referenced by PlayInTime(), and PlayNextFrame().

float vuKeyFramerDialog::m_play_time [protected]
 

This is the total play time of a key frame animation file.

This is the time that is currently playing (so that we know what frames to interpolate, how to interpolate and play them next).

Definition at line 1097 of file vuKeyFramerDialog.h.

Referenced by PlayInTime(), and PlayNextFrame().

vuHWTimer vuKeyFramerDialog::m_play_timer [protected]
 

this will be used to time the play of the animation files

Definition at line 1204 of file vuKeyFramerDialog.h.

Referenced by PlayInTime().

float vuKeyFramerDialog::m_play_times[5] [protected]
 

This array contains the last five play times in the key frame animation.

This is stored so that I can keep track of the frame rate and ignore anomolies by averaging the last five instead of taking the last one.

Definition at line 1102 of file vuKeyFramerDialog.h.

Referenced by PlayInTime(), and PlayNextFrame().

char* vuKeyFramerDialog::m_play_video_buf [protected]
 

This is the screen buffer that files are being read to and that images are being allocated from.

Definition at line 1081 of file vuKeyFramerDialog.h.

Referenced by PlayNextImage().

int vuKeyFramerDialog::m_play_video_frame [protected]
 

This is the frame that the video is currently playing.

This is needed here since I cannot store it locally in playNextImage.

Definition at line 1128 of file vuKeyFramerDialog.h.

Referenced by PlayFromImages(), and PlayNextImage().

int vuKeyFramerDialog::m_play_video_size [protected]
 

This is the size of the buffer that is needed to store frames in the video player.

This is needed here since I need to preserve it from frame to frame as I PlayNextImage ();

Definition at line 1133 of file vuKeyFramerDialog.h.

Referenced by PlayFromImages(), and PlayNextImage().

float vuKeyFramerDialog::m_play_video_times[5] [protected]
 

This is the array of the last five play times when playing a video.

This is stored so that I can keep track of the frame rate that I am achieving, and ignore anomolies by averaging five.

Definition at line 1107 of file vuKeyFramerDialog.h.

Referenced by PlayFromImages(), and PlayNextImage().

float vuKeyFramerDialog::m_play_video_ttime [protected]
 

This is the length of time that the video is currently playing so that it can work out which cel that it should play.

Definition at line 1112 of file vuKeyFramerDialog.h.

Referenced by PlayFromImages(), and PlayNextImage().

wxButton* vuKeyFramerDialog::m_playfromimages [protected]
 

This is the video play button.

Definition at line 934 of file vuKeyFramerDialog.h.

void* vuKeyFramerDialog::m_PlayTimer [protected]
 

This is a pointer to a timer...

Definition at line 1139 of file vuKeyFramerDialog.h.

vuStopWatch vuKeyFramerDialog::m_playwatch [protected]
 

This is used to figure out how long it's taking for the key frame to play, and to figure out which frame or interpolated frame it should play next.

This will run faster if fast forwarding, and backwards if rewinding...

Definition at line 1222 of file vuKeyFramerDialog.h.

Referenced by OnFastForward(), OnKFBounce(), OnKFLoop(), OnPause(), OnRewind(), PlayFunc(), PlayInTime(), PlayNextFrame(), setIsFastForwarding(), setIsKFBouncing(), setIsKFLooping(), setIsKFReversing(), setIsPaused(), setIsPlaying(), and setIsRewinding().

vuPPM vuKeyFramerDialog::m_PPMHandler [protected]
 

This will read ppm files and put them into the screen buffers.

Definition at line 1209 of file vuKeyFramerDialog.h.

Referenced by BurstPlayGI(), and PlayNextImage().

wxBitmapButton* vuKeyFramerDialog::m_record [protected]
 

This is the key frame record button.

Definition at line 935 of file vuKeyFramerDialog.h.

Referenced by OnKFSelect(), and OnVideoSelect().

wxBitmapButton* vuKeyFramerDialog::m_rewind [protected]
 

This is the key frame rewind button.

Definition at line 936 of file vuKeyFramerDialog.h.

wxButton* vuKeyFramerDialog::m_save [protected]
 

This is the key frame save button.

Definition at line 937 of file vuKeyFramerDialog.h.

Referenced by OnClose(), OnKFSelect(), OnRecord(), OnSave(), OnStop(), and OnVideoSelect().

wxScrollBar* vuKeyFramerDialog::m_scroller [protected]
 

This is a scroll bar to be used later on when full editing capabilities are added to this key framer.

(The scrollbar would be used to select the frame at the time where the | represents the bar, and the f's represent frames at specific times...

| | f |f f f | ====================================

This way a frame could be selected easily be the user, dragged and moved into the correct time.

Definition at line 977 of file vuKeyFramerDialog.h.

wxBitmapButton* vuKeyFramerDialog::m_stop [protected]
 

This is the key frame stop button.

Definition at line 938 of file vuKeyFramerDialog.h.

wxButton* vuKeyFramerDialog::m_takeshot [protected]
 

This is the key frame take snap shot button.

Definition at line 939 of file vuKeyFramerDialog.h.

Referenced by OnClose(), OnKFSelect(), OnRecord(), OnSave(), OnStop(), and OnVideoSelect().

wxTextCtrl* vuKeyFramerDialog::m_time_delay [protected]
 

This is the time delay with which an animation will be generated ie, if m_time_delay contains the text 0.03 it will generate 33 images per second of animation time in the video file (so that the video can play back at 33 frames per second).

Definition at line 970 of file vuKeyFramerDialog.h.

Referenced by BurstPlayGI().

wxTextCtrl* vuKeyFramerDialog::m_time_final [protected]
 

This is dormant for now, this is the end time of the set.

Definition at line 969 of file vuKeyFramerDialog.h.

vuDVector<float> vuKeyFramerDialog::m_time_vector [protected]
 

This will be used to store the times that each key frame is located at (ie, key frame i is at time m_time_vector [i]).

Definition at line 1194 of file vuKeyFramerDialog.h.

Referenced by bisect_time_vector_search(), BurstPlayGI(), clear_vectors(), get_frame_number(), LoadFunc(), OnClose(), OnTakeShot(), PlayFunc(), PlayNextFrame(), RecordFunc(), and SaveFunc().

vuHWTimer vuKeyFramerDialog::m_timer [protected]
 

This will be used as a general purpose timer.

Definition at line 1201 of file vuKeyFramerDialog.h.

Referenced by OnTakeShot(), and RecordFunc().

wxStaticText* vuKeyFramerDialog::m_total_time [protected]
 

This displays the total time taken to render the scenes to the screen.

Definition at line 1012 of file vuKeyFramerDialog.h.

Referenced by BurstPlay(), BurstPlayGI(), PlayNextFrame(), and PlayNextImage().

wxCheckBox* vuKeyFramerDialog::m_vid_bounce [protected]
 

This is the checkbox that will be selected if the video portion of the animator should bounce while playing it's animations.

Definition at line 957 of file vuKeyFramerDialog.h.

wxButton* vuKeyFramerDialog::m_vid_close [protected]
 

This is the video close button.

Definition at line 940 of file vuKeyFramerDialog.h.

wxButton* vuKeyFramerDialog::m_vid_fastforward [protected]
 

This is the video fast forward button.

Definition at line 941 of file vuKeyFramerDialog.h.

wxStaticText* vuKeyFramerDialog::m_vid_fm_rate_txt [protected]
 

This displays the frame rate that a video play back is achieving.

Definition at line 1014 of file vuKeyFramerDialog.h.

wxStaticText* vuKeyFramerDialog::m_vid_frames_played_txt [protected]
 

This displays the number of frames that have been played by the video side of the animator in the current operation.

Definition at line 1016 of file vuKeyFramerDialog.h.

wxButton* vuKeyFramerDialog::m_vid_load [protected]
 

This is the video load button.

Definition at line 942 of file vuKeyFramerDialog.h.

wxStaticText* vuKeyFramerDialog::m_vid_loaded_txt [protected]
 

This displays which video is currently loaded and can be played.

Definition at line 1020 of file vuKeyFramerDialog.h.

wxCheckBox* vuKeyFramerDialog::m_vid_loop [protected]
 

This is the checkbox that should be selected if the video portion of the animator should loop while playing it's animations.

Definition at line 960 of file vuKeyFramerDialog.h.

wxButton* vuKeyFramerDialog::m_vid_pause [protected]
 

This is the video pause button.

Definition at line 943 of file vuKeyFramerDialog.h.

wxButton* vuKeyFramerDialog::m_vid_play [protected]
 

This is the video play button.

Definition at line 944 of file vuKeyFramerDialog.h.

vuStopWatch vuKeyFramerDialog::m_vid_play_timer [protected]
 

This timer is used to figure out how long it takes to play back a video (it's here because the fucntion is borken up into steps of playnextimage (), so that the other wxevents could be processed in that time.

The time stored by this is corresponds to which frame should be played (if it's too late to play a frame, it'll skip and go to the next, this timer's time will be changed by fast forwards and rewinds.).

Definition at line 1229 of file vuKeyFramerDialog.h.

Referenced by OnKFBounce(), OnKFLoop(), OnVideoBounce(), OnVideoFastForward(), OnVideoLoop(), OnVideoPause(), OnVideoReverse(), OnVideoRewind(), PlayFromImages(), PlayNextImage(), setIsVideoBouncing(), setIsVideoFastForwarding(), setIsVideoLooping(), setIsVideoPaused(), setIsVideoReversing(), and setIsVideoRewinding().

wxButton* vuKeyFramerDialog::m_vid_rewind [protected]
 

This is the video rewind button.

Definition at line 945 of file vuKeyFramerDialog.h.

wxStaticText* vuKeyFramerDialog::m_vid_status_txt [protected]
 

This displays what the status of the video player (ie, is it playing, paused, fastforwarding, etc...).

Definition at line 1022 of file vuKeyFramerDialog.h.

wxButton* vuKeyFramerDialog::m_vid_stop [protected]
 

This is the video stop button.

Definition at line 946 of file vuKeyFramerDialog.h.

wxStaticText* vuKeyFramerDialog::m_vid_total_time_txt [protected]
 

This displays the total time the video has spent running it's animation so far.

Definition at line 1025 of file vuKeyFramerDialog.h.

wxCheckBox* vuKeyFramerDialog::m_vid_txt [protected]
 

This displays the title of the video handling section on the key framer window.

Definition at line 1027 of file vuKeyFramerDialog.h.

Referenced by IsVideoBouncing(), IsVideoLooping(), OnClose(), OnFastForward(), OnKFBounce(), OnKFLoop(), OnKFSelect(), OnLoad(), OnPause(), OnPlay(), and OnRewind().

bool vuKeyFramerDialog::mb_fast_forward [protected]
 

This is true if the key frame handler is fast- forwarding, false otherwise.

Definition at line 1037 of file vuKeyFramerDialog.h.

Referenced by setIsFastForwarding().

bool vuKeyFramerDialog::mb_imgs_loaded [protected]
 

This is true if there is a video loaded, and is false otherwise.

Definition at line 1039 of file vuKeyFramerDialog.h.

Referenced by setIsImgsLoaded().

bool vuKeyFramerDialog::mb_kf_reverse [protected]
 

This is true if the key frame handler is reversing, false otherwise.

Definition at line 1041 of file vuKeyFramerDialog.h.

Referenced by setIsKFReversing().

bool vuKeyFramerDialog::mb_kf_select [protected]
 

Definition at line 1043 of file vuKeyFramerDialog.h.

bool vuKeyFramerDialog::mb_loaded [protected]
 

This is true if a key frame file is loaded and is false otherwise.

Definition at line 1044 of file vuKeyFramerDialog.h.

Referenced by setIsLoaded().

bool vuKeyFramerDialog::mb_pause [protected]
 

This is true if the key framer handler is paused while it is playing something else, and is false otherwise.

Definition at line 1046 of file vuKeyFramerDialog.h.

Referenced by setIsPaused().

bool vuKeyFramerDialog::mb_play [protected]
 

This is true if the key framer handler is playing, and is false otherwise.

Definition at line 1049 of file vuKeyFramerDialog.h.

Referenced by OnPlay(), and setIsPlaying().

bool vuKeyFramerDialog::mb_play_from_images [protected]
 

This is true if there is a video playing, and is false otherwise.

Definition at line 1051 of file vuKeyFramerDialog.h.

Referenced by setIsPlayingImgs().

bool vuKeyFramerDialog::mb_record [protected]
 

This is true if the key frame handler is recording something, and is false otherwise.

Definition at line 1053 of file vuKeyFramerDialog.h.

Referenced by setIsRecording().

bool vuKeyFramerDialog::mb_rewind [protected]
 

This is true if the key frame handler is rewinding something, and is false otherwise.

Definition at line 1055 of file vuKeyFramerDialog.h.

Referenced by setIsRewinding().

bool vuKeyFramerDialog::mb_run [protected]
 

This is true if the key frame handler is running something and is false otherwise..

I think that this is probably deprecrated and probably should be removed

Definition at line 1057 of file vuKeyFramerDialog.h.

Referenced by run().

bool vuKeyFramerDialog::mb_stop [protected]
 

This is true if the key frame handler is stopped, and is false otherwise.

Definition at line 1062 of file vuKeyFramerDialog.h.

Referenced by setIsStopped().

bool vuKeyFramerDialog::mb_video_bounce [protected]
 

Definition at line 1064 of file vuKeyFramerDialog.h.

bool vuKeyFramerDialog::mb_video_fast_forward [protected]
 

This is true if the video handler is fast forwarding through a video file.

Definition at line 1065 of file vuKeyFramerDialog.h.

Referenced by setIsVideoFastForwarding().

bool vuKeyFramerDialog::mb_video_loop [protected]
 

Definition at line 1067 of file vuKeyFramerDialog.h.

bool vuKeyFramerDialog::mb_video_pause [protected]
 

This is true if the video handler is paused while it is playing or fastforwarding or rewinding a video file, and is false otherwise.

Definition at line 1068 of file vuKeyFramerDialog.h.

Referenced by setIsVideoPaused().

bool vuKeyFramerDialog::mb_video_reverse [protected]
 

This is true if the video portion of the animator is reversing, false otherwise.

Definition at line 1072 of file vuKeyFramerDialog.h.

Referenced by setIsVideoReversing().

bool vuKeyFramerDialog::mb_video_rewind [protected]
 

This is true if the video handler is rewinding while it is playing a video and is false otherwise.

Definition at line 1074 of file vuKeyFramerDialog.h.

Referenced by setIsVideoRewinding().

bool vuKeyFramerDialog::mb_video_select [protected]
 

Definition at line 1071 of file vuKeyFramerDialog.h.

vuDVector<char*> vuKeyFramerDialog::tfilenamevector [protected]
 

This will be used to store the filenames of each of the PPMs in a video animation (these will be preloaded to speed things up a bit).

Remember to free your memory. cel i is found by reading file named tfilenamevector [i].

Definition at line 1182 of file vuKeyFramerDialog.h.

Referenced by OnVideoClose(), OpenGIFile(), PlayNextImage(), and ~vuKeyFramerDialog().

float vuKeyFramerDialog::time_t [protected]
 

Definition at line 1095 of file vuKeyFramerDialog.h.

Referenced by OnTakeShot(), and RecordFunc().

vuDVector<float> vuKeyFramerDialog::ttimevector [protected]
 

This will be used to store the time associated with each cel in a video animation.

cel i's time will be the value stored at ttimevector [i].

This is so I don't play too early or too late..., and was preloaded to speed things up.

Definition at line 1173 of file vuKeyFramerDialog.h.

Referenced by OnVideoClose(), OpenGIFile(), PlayFromImages(), and PlayNextImage().


The documentation for this class was generated from the following files:
Generated on Wed Dec 15 21:21:17 2004 for vuVolume by  doxygen 1.3.9.1