[#BloombergLP-ball-BroadcastObserver-registerObserver] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/ball.adoc[ball]::xref:BloombergLP/ball/BroadcastObserver.adoc[BroadcastObserver]::registerObserver :relfileprefix: ../../../ :mrdocs: Add the specified `observer` with the specified `observerName` to the registry of this broadcast observer. Return 0 if `observer` was successfully registered, and a non‐zero value (with no effect) otherwise. Henceforth, this observer will forward each record it receives through its `publish` method, including the record's context, to the `publish` method of `observer`, until `observer` is deregistered. The behavior is undefined if a cyclic reference is created among registered observers. Note that this method will fail if an observer having `observerName` is already registered. == Synopsis Declared in `<ball_broadcastobserver.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- int registerObserver( xref:bsl/shared_ptr-0a.adoc[bsl::shared_ptr<Observer>] const& observer, std::string_view const& observerName); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#