Blame | Last modification | View Log | Download
#ifndef EVENTS_H#define EVENTS_H/*Copyright (C) 2004 John OrlandoAVRcam: a small real-time image processing engine.This program is free software; you can redistribute it and/ormodify it under the terms of the GNU General PublicLicense as published by the Free Software Foundation; eitherversion 2 of the License, or (at your option) any later version.This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNUGeneral Public License for more details.You should have received a copy of the GNU General PublicLicense along with this program; if not, write to the Free SoftwareFoundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USAFor more information on the AVRcam, please contact:john@jrobot.netor go to www.jrobot.net for more details regarding the system.*//***********************************************************Module Name: Events.hModule Date: 05/23/2004Module Auth: John OrlandoDescription: This file provides the external interfaceto the events that can be published/processed in thesystem. It is specifically by itself (and nothingelse should be defined in here) so that both .c and.S (assembly) files can include this file withouta problem.Revision History:Date Rel Ver. Notes4/10/2004 0.1 Module created6/30/2004 1.0 Initial release for Circuit Cellarcontest.*******************************************************//* Definitions *//* Originally, all events were passed in a bitmask...however,an event FIFO was finally used, but the coding of the eventdefinitions were never translated back....doesn't make adifference, but looks a little weird */#define EV_SERIAL_DATA_RECEIVED 0x01#define EV_DUMP_FRAME 0x02#define EV_PROCESS_FRAME_COMPLETE 0x04#define EV_PROCESS_LINE_COMPLETE 0x08#define EV_ACQUIRE_LINE_COMPLETE 0x10#define EV_ACQUIRE_FRAME_COMPLETE 0x20#define EV_CONFIGURE_CAMERA 0x40#define EV_ENABLE_TRACKING 0x80#define EV_DISABLE_TRACKING 0x81#define EV_SERIAL_DATA_PENDING_TX 0x90#define EV_RED_COLOR_MAP_RECEIVED 0x91#define EV_BLUE_COLOR_MAP_RECEIVED 0x92#define EV_GREEN_COLOR_MAP_RECEIVED 0x93/* This is used to pass fast events through the systemso there is a minimum of processing time neededbetween lines of tracking data */#define FEV_ACQUIRE_LINE_COMPLETE 0x01#define FEV_PROCESS_LINE_COMPLETE 0x02/* This is needed for the event fifo */#define EXEC_EVENT_FIFO_SIZE 8#define EXEC_EVENT_FIFO_MASK EXEC_EVENT_FIFO_SIZE-1#endif