summaryrefslogtreecommitdiffstats
path: root/media/libeffects/factory/EffectsFactory.h
diff options
context:
space:
mode:
authorjpadmana <rpadmanaban.jayashree@gmail.com>2013-06-04 16:08:29 +0530
committerEric Laurent <elaurent@google.com>2013-09-06 10:33:03 -0700
commit284c17e73bbff51cb5b1adcee98386d47733757a (patch)
treed400f398fd4f2e8e383256973185b7dae243f92f /media/libeffects/factory/EffectsFactory.h
parenta19912554f3779fac0c341ac702227bf4b5fe399 (diff)
downloadframeworks_av-284c17e73bbff51cb5b1adcee98386d47733757a.zip
frameworks_av-284c17e73bbff51cb5b1adcee98386d47733757a.tar.gz
frameworks_av-284c17e73bbff51cb5b1adcee98386d47733757a.tar.bz2
Effects Factory changes for effects offload
audio_effects.conf - commented changes to illustrate the addition of Proxy and sub effects to the conf file Added an effectFactoryApi - EffectGetSubEffects for querying the sub effect descriptors from the factory. This api is used by the Proxy to get the sub effects Added functions and data structures in factory code for loading the sub effects gSubEffectList - has the Proxies and their corresponding sub effects - addSubEffect() - reads a sub effect node and adds to the gSubEffectList - findSubEffect() - searches through the gSubEffectList to find a SubEffect Bug: 8174034. Change-Id: I25b0c62b2ad523a52337128b51469e628209ea3e Signed-off-by: jpadmana <rpadmanaban.jayashree@gmail.com>
Diffstat (limited to 'media/libeffects/factory/EffectsFactory.h')
-rw-r--r--media/libeffects/factory/EffectsFactory.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/media/libeffects/factory/EffectsFactory.h b/media/libeffects/factory/EffectsFactory.h
index c1d4319..147ff18 100644
--- a/media/libeffects/factory/EffectsFactory.h
+++ b/media/libeffects/factory/EffectsFactory.h
@@ -32,6 +32,15 @@ typedef struct list_elem_s {
struct list_elem_s *next;
} list_elem_t;
+// Structure used for storing effects with their sub effects.
+// Used in creating gSubEffectList. Here,
+// object holds the effect desc and the list sub_elem holds the sub effects
+typedef struct list_sub_elem_s {
+ void *object;
+ list_elem_t *sub_elem;
+ struct list_sub_elem_s *next;
+} list_sub_elem_t;
+
typedef struct lib_entry_s {
audio_effect_library_t *desc;
char *name;
@@ -47,6 +56,16 @@ typedef struct effect_entry_s {
lib_entry_t *lib;
} effect_entry_t;
+// Structure used to store the lib entry
+// and the descriptor of the sub effects.
+// The library entry is to be stored in case of
+// sub effects as the sub effects are not linked
+// to the library list - gLibraryList.
+typedef struct sub_effect_entry_s {
+ lib_entry_t *lib;
+ void *object;
+} sub_effect_entry_t;
+
#if __cplusplus
} // extern "C"
#endif