summaryrefslogtreecommitdiff
path: root/runtime/runtime_callbacks.cc
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/runtime_callbacks.cc')
-rw-r--r--runtime/runtime_callbacks.cc40
1 files changed, 40 insertions, 0 deletions
diff --git a/runtime/runtime_callbacks.cc b/runtime/runtime_callbacks.cc
index aad943020d..0b10d2ee1d 100644
--- a/runtime/runtime_callbacks.cc
+++ b/runtime/runtime_callbacks.cc
@@ -58,12 +58,52 @@ void RuntimeCallbacks::RemoveDdmCallback(DdmCallback* cb) {
Remove(cb, &ddm_callbacks_);
}
+void RuntimeCallbacks::AddAppInfoCallback(AppInfoCallback* cb) {
+ WriterMutexLock mu(Thread::Current(), *callback_lock_);
+ appinfo_callbacks_.push_back(cb);
+}
+
+void RuntimeCallbacks::RemoveAppInfoCallback(AppInfoCallback* cb) {
+ WriterMutexLock mu(Thread::Current(), *callback_lock_);
+ Remove(cb, &appinfo_callbacks_);
+}
+
void RuntimeCallbacks::DdmPublishChunk(uint32_t type, const ArrayRef<const uint8_t>& data) {
for (DdmCallback* cb : COPY(ddm_callbacks_)) {
cb->DdmPublishChunk(type, data);
}
}
+void RuntimeCallbacks::SetCurrentProcessName(const std::string& process_name) {
+ for (AppInfoCallback* cb : COPY(appinfo_callbacks_)) {
+ cb->SetCurrentProcessName(process_name);
+ }
+}
+
+void RuntimeCallbacks::AddApplication(const std::string& package_name) {
+ for (AppInfoCallback* cb : COPY(appinfo_callbacks_)) {
+ cb->AddApplication(package_name);
+ }
+}
+
+void RuntimeCallbacks::RemoveApplication(const std::string& package_name) {
+ for (AppInfoCallback* cb : COPY(appinfo_callbacks_)) {
+ cb->RemoveApplication(package_name);
+ }
+}
+
+void RuntimeCallbacks::SetWaitingForDebugger(bool waiting) {
+ for (AppInfoCallback* cb : COPY(appinfo_callbacks_)) {
+ cb->SetWaitingForDebugger(waiting);
+ }
+}
+
+void RuntimeCallbacks::SetUserId(int user_id) {
+ for (AppInfoCallback* cb : COPY(appinfo_callbacks_)) {
+ cb->SetUserId(user_id);
+ }
+}
+
void RuntimeCallbacks::AddDebuggerControlCallback(DebuggerControlCallback* cb) {
WriterMutexLock mu(Thread::Current(), *callback_lock_);
debugger_control_callbacks_.push_back(cb);