|  | /** | 
|  | * Copyright (C) 2008, Creative Technology Ltd. All Rights Reserved. | 
|  | * | 
|  | * This source file is released under GPL v2 license (no other versions). | 
|  | * See the COPYING file included in the main directory of this source | 
|  | * distribution for the license terms and conditions. | 
|  | * | 
|  | * @File	ctimap.h | 
|  | * | 
|  | * @Brief | 
|  | * This file contains the definition of generic input mapper operations | 
|  | * for input mapper management. | 
|  | * | 
|  | * @Author	Liu Chun | 
|  | * @Date 	May 23 2008 | 
|  | * | 
|  | */ | 
|  |  | 
|  | #ifndef CTIMAP_H | 
|  | #define CTIMAP_H | 
|  |  | 
|  | #include <linux/list.h> | 
|  |  | 
|  | struct imapper { | 
|  | unsigned short slot; /* the id of the slot containing input data */ | 
|  | unsigned short user; /* the id of the user resource consuming data */ | 
|  | unsigned short addr; /* the input mapper ram id */ | 
|  | unsigned short next; /* the next input mapper ram id */ | 
|  | struct list_head	list; | 
|  | }; | 
|  |  | 
|  | int input_mapper_add(struct list_head *mappers, struct imapper *entry, | 
|  | int (*map_op)(void *, struct imapper *), void *data); | 
|  |  | 
|  | int input_mapper_delete(struct list_head *mappers, struct imapper *entry, | 
|  | int (*map_op)(void *, struct imapper *), void *data); | 
|  |  | 
|  | void free_input_mapper_list(struct list_head *mappers); | 
|  |  | 
|  | #endif /* CTIMAP_H */ |