class AnnotationManager
Defined at line 23 of file ../../src/developer/forensics/feedback/annotations/annotation_manager.h
Responsible for the storage and collection of annotations.
Note: inserted annotations must be unique and a check-fail will occur if keys intersect.
Public Methods
void AnnotationManager (async_dispatcher_t * dispatcher, std::set<std::string> allowlist, Annotations static_annotations, NonPlatformAnnotationProvider * non_platform_provider, std::vector<DynamicSyncAnnotationProvider *> dynamic_sync_providers, std::vector<StaticAsyncAnnotationProvider *> static_async_providers, std::vector<CachedAsyncAnnotationProvider *> cached_async_providers, std::vector<DynamicAsyncAnnotationProvider *> dynamic_async_providers, const std::set<std::string> & product_exclude_list)
Allowlist dictates which messages can be extracted from the manager's interface.
Annotations not in the allowlist or not explicitly exempted won't be returned.
Defined at line 72 of file ../../src/developer/forensics/feedback/annotations/annotation_manager.cc
::fpromise::promise<Annotations> GetAll (zx::duration timeout)
Returns all annotations collected by the manager in a promise that is guaranteed to complete
before |timeout| expires.
Defined at line 184 of file ../../src/developer/forensics/feedback/annotations/annotation_manager.cc
Annotations ImmediatelyAvailable ()
Returns the annotations that are immediately available.
This is useful when annotations can't be waited, e.g. component startup /
shutdown, and the annotation aggregate data that are ready to be used because it never changes,
is available in a short amount of time, or is cached.
Defined at line 214 of file ../../src/developer/forensics/feedback/annotations/annotation_manager.cc
bool IsMissingNonPlatformAnnotations ()
Returns true if the non-platform annotation provider is missing annotations.
Defined at line 230 of file ../../src/developer/forensics/feedback/annotations/annotation_manager.cc