extern void audit ( const char * ) ;
extern void begin_wait_message ( char *msg , int ok_to_abort ) ;
extern int compute_3Dag ( AG3D_Params *params , unsigned char *img ) ;
extern int compute_ag ( AG_Params *params , unsigned char *img ) ;
extern int compute_er ( ER_Params *params , unsigned char *img ) ;
extern void end_wait_message () ;
extern void end_printing ( HWND hwnd ) ;
extern void error_message ( char *msg ) ;
extern int initialize_for_printing ( HWND hwnd ) ;
extern void insufficient_memory ( char *msg ) ;
extern int name_3DAG_file ( HWND hwnd , char *name ) ;
extern void name_3DAG_file_init () ;
extern int read_3DAG ( char *filename ) ;
extern int save_img_file ( HWND hwnd , char *name ) ;
extern void save_img_file_init () ;
extern void setpos_wait_message ( double pos ) ;
extern int user_pressed_escape () ;

extern "C" {
LRESULT CALLBACK FrameWndProc ( HWND , UINT , WPARAM , LPARAM ) ;
LRESULT CALLBACK ImageWndProc ( HWND , UINT , WPARAM , LPARAM ) ;
INT_PTR CALLBACK DialogAbout ( HWND hdwnd , UINT message ,
                            WPARAM wParam , LPARAM lParam ) ;
INT_PTR CALLBACK DialogERParams ( HWND hdwnd , UINT message ,
                                  WPARAM wParam , LPARAM lParam ) ;
INT_PTR CALLBACK DialogAGParams ( HWND hdwnd , UINT message ,
                                  WPARAM wParam , LPARAM lParam ) ;
INT_PTR CALLBACK Dialog3DAGParams ( HWND hdwnd , UINT message ,
                                    WPARAM wParam , LPARAM lParam ) ;
INT_PTR CALLBACK DialogPrintParams ( HWND hdwnd , UINT message ,
                                  WPARAM wParam , LPARAM lParam ) ;
}
