summaryrefslogtreecommitdiffstats
path: root/services/audioflinger/Effects.h
diff options
context:
space:
mode:
Diffstat (limited to 'services/audioflinger/Effects.h')
-rw-r--r--services/audioflinger/Effects.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/services/audioflinger/Effects.h b/services/audioflinger/Effects.h
index bac50f2..c35cff0 100644
--- a/services/audioflinger/Effects.h
+++ b/services/audioflinger/Effects.h
@@ -111,6 +111,10 @@ public:
bool purgeHandles();
void lock() { mLock.lock(); }
void unlock() { mLock.unlock(); }
+ bool isOffloadable() const
+ { return (mDescriptor.flags & EFFECT_FLAG_OFFLOAD_SUPPORTED) != 0; }
+ status_t setOffloaded(bool offloaded, audio_io_handle_t io);
+ bool isOffloaded() const;
void dump(int fd, const Vector<String16>& args);
@@ -144,6 +148,7 @@ mutable Mutex mLock; // mutex for process, commands and handl
// sending disable command.
uint32_t mDisableWaitCnt; // current process() calls count during disable period.
bool mSuspended; // effect is suspended: temporarily disabled by framework
+ bool mOffloaded; // effect is currently offloaded to the audio DSP
};
// The EffectHandle class implements the IEffect interface. It provides resources
@@ -303,8 +308,8 @@ public:
void clearInputBuffer();
- // At least one effect in the chain is enabled
- bool isEnabled();
+ // At least one non offloadable effect in the chain is enabled
+ bool isNonOffloadableEnabled();
void dump(int fd, const Vector<String16>& args);