/** * 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 */