void Animator::Initialized (Display *, XtAppContext)This routine is used if the Polka animation window is not the first Xt window to be generated for this process. Foe example, if the application using Polka initially puts up a window that the user can interact with, then this routine should be called and passed the X Display and Xt application context received from X initialization.
void Animator::RegisterAlgoEvt (const char *name, const char *parampattern)This routine registers the event with name name and a trailing parameter pattern. This is a string of d's (integers), f's (doubles), and s's (strings). For example, a parampattern of ``ddfs'' says that this event has two integers, a double, and a string, in that order. Currently, it is not allowable to overload a given name with multiple different parameter patterns.
int Animator::SendAlgoEvt (const char * ...)This routine actually transmits an algorithm event to an Animator. It first stuffs the name and trailing parameters into the variables as described above. In the parameter pattern ``ddfs'', AnimInts[0] gets the first int, AnimInts[1] gets the second int, AnimDoubles[0] gets the double, and AnimStrings[0] gets the string. It then calls the function Controller, which you should have defined in your derived Animator class. In there, you should check what event was just sent, and the call the appropriate View functions.
void Animator::RegisterView (View *)This routine and the next two are used when multiple animation views will be in service for one Animator. This routines registers a View with its Animator. That is, this routine tells an Animator that a View exists, and must be called when animating via the following routine. Each View should call this routine, passing its ``this'' pointer as the parameter, at start-up. Make sure to read about and use the next function, RemoveView, if you use RegisterView.
void Animator::RemoveView (View *)This routine should be used when you want to delete a View and the View has earlier been registered with its Animator by using the RegisterView procedure. Make sure to call this routine BEFORE you delete the View. Essentially, we need to remove this View from the list of Views associated with the Animator. Consequently, subsequent calls to Animator::Animate will not utilize this View.
int Animator::Animate (int start, int len)This routine is used to animate multiple animation Views simultaneously. When this routine is called, each View that has been registered with RegisterView, will have its individual View::Animate routine called. Control will be interleaved among the Views on a frame-by-frame basis, thus providing the illusion of simultaneity. The parameter start provides the time from which to start animating (the first time passed to the individual Views), and the parameter len specifies how many frames should be generated. The routine returns the time after the animation has taken place ( start + len). Note: you do not need to use this routine if your animation only has one view.