/* 
 * Thomas Pantzer: user.h, v0.4.7  8.6.99 16:32 
 * 
 * 
 * Copyright 1999 by Thomas Pantzer
 * 
 * Permission to use, copy, modify, and distribute this software for noncommercial 
 * use and without fee is hereby granted, provided that the above copyright notice 
 * appear in all copies and that both that copyright notice and this permission 
 * notice appear in supporting documentation, and that the name of the Author not be 
 * used in advertising or publicity pertaining to distribution of the software 
 * without specific, written prior permission. The Author makes no representations about
 * the suitability of this software for any purpose.  It is provided "as is" 
 * without expressed or implied warranty. 
 * 
 * 
 * pantec@isys2.informatik.uni-leipzig.de   (Thomas Pantzer) 
 * 
 */




#ifndef _USER_H
#define _USER_H



//#include "khepera.h"
//#include "t_kurvemap.h"
#include "t_path.h"
#include "t_runtime_obj.h"
//#include "filters.h"


//#include "diffeq_demo.h"
//#include "homeo_demo.h"
//#include "kompass_demo.h"
//#include "gripper_demo.h"


extern void user_cb_init(void);
extern void user_cb(char, char);
extern void user_cb_done(void);
extern void Update_Display(int);


#define _cm_GRIPPER	0
#define _cm_NEURONAL	1
#define _cm_SIMULATOR	2
#define _cm_HOMEO	3

//#define FOLLOW_DEMOMODE	  2
// #define KOMPASS_DEMOMODE  3



/*
extern void kmap_init(char *);
extern char kmap_step();
extern void kmap_done();
*/
// extern void user_init(void);
//extern void user_reset(void);
//extern void Check_Kohonen(RobotContext *Robot);
//extern void FilterPass(t_robot_basic &Rob);

#ifdef sun                                                                                      
// I can't find the header file for this, but it exists                                         
extern "C" {                                                                                    
                                                                                                
extern void usleep(unsigned int);                                                               
                                                                                                
}                                                                                               
#endif                                                                                          


//#define view_modes 6
//#define demo_modes 5


#ifdef _USER_G
  #define m_extern 
#else
  #define m_extern extern
#endif




m_extern int control_mode;
m_extern t_runtime_root Callbacks;
m_extern long end_cb_stamp;
m_extern char show_graphix;


m_extern double update_freq;
#undef m_extern



#endif







/**/
/**/
/**/
/**/
/**/
/**/
/**/
/**/
/*****  End Of File  ****************************/
