# {py:mod}`pyuvm._s10_synchronization_classes` ```{py:module} pyuvm._s10_synchronization_classes ``` ```{autodoc2-docstring} pyuvm._s10_synchronization_classes :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`uvm_apprepend ` - * - {py:obj}`uvm_callback ` - * - {py:obj}`uvm_callbacks ` - * - {py:obj}`uvm_callback_iter ` - ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callback_iter :summary: ``` ```` ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`uvm_do_callbacks ` - ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_do_callbacks :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`__all__ ` - ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.__all__ :summary: ``` ```` ### API ````{py:data} __all__ :canonical: pyuvm._s10_synchronization_classes.__all__ :value: > ['uvm_apprepend', 'uvm_callback', 'uvm_callbacks', 'uvm_callback_iter', 'uvm_do_callbacks'] ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.__all__ ``` ```` `````{py:class} uvm_apprepend(*args, **kwds) :canonical: pyuvm._s10_synchronization_classes.uvm_apprepend Bases: {py:obj}`enum.Enum` ````{py:attribute} UVM_APPEND :canonical: pyuvm._s10_synchronization_classes.uvm_apprepend.UVM_APPEND :value: > 'auto(...)' ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_apprepend.UVM_APPEND ``` ```` ````{py:attribute} UVM_PREPEND :canonical: pyuvm._s10_synchronization_classes.uvm_apprepend.UVM_PREPEND :value: > 'auto(...)' ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_apprepend.UVM_PREPEND ``` ```` ````` `````{py:class} uvm_callback(name: str = 'uvm_callback') :canonical: pyuvm._s10_synchronization_classes.uvm_callback Bases: {py:obj}`pyuvm._s05_base_classes.uvm_object` ````{py:method} callback_mode(on: bool | None = None) :canonical: pyuvm._s10_synchronization_classes.uvm_callback.callback_mode ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callback.callback_mode ``` ```` ````{py:method} is_enabled() -> bool :canonical: pyuvm._s10_synchronization_classes.uvm_callback.is_enabled ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callback.is_enabled ``` ```` ````` `````{py:class} uvm_callbacks(name: str = 'uvm_callbacks') :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks Bases: {py:obj}`pyuvm._s05_base_classes.uvm_object` ````{py:attribute} _instance :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks._instance :value: > None ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks._instance ``` ```` ````{py:attribute} _callbacks :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks._callbacks :type: dict[pyuvm._s05_base_classes.uvm_object | type, list[pyuvm._s10_synchronization_classes.uvm_callback]] :value: > None ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks._callbacks ``` ```` ````{py:method} __new__(*args, **kwargs) :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks.__new__ ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks.__new__ ``` ```` ````{py:method} get() :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks.get :classmethod: ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks.get ``` ```` ````{py:method} add(obj, cb, ordering: pyuvm._s10_synchronization_classes.uvm_apprepend = uvm_apprepend.UVM_APPEND) :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks.add :classmethod: ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks.add ``` ```` ````{py:method} add_by_name(name: str, cb: pyuvm._s10_synchronization_classes.uvm_callback, root: pyuvm._s13_predefined_component_classes.uvm_component, ordering: pyuvm._s10_synchronization_classes.uvm_apprepend = uvm_apprepend.UVM_APPEND) -> None :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks.add_by_name :classmethod: ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks.add_by_name ``` ```` ````{py:method} delete(obj, cb: pyuvm._s10_synchronization_classes.uvm_callback) -> None :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks.delete :classmethod: ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks.delete ``` ```` ````{py:method} delete_by_name(name: str, cb: pyuvm._s10_synchronization_classes.uvm_callback, root: pyuvm._s13_predefined_component_classes.uvm_component) :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks.delete_by_name :classmethod: ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks.delete_by_name ``` ```` ````{py:method} get_first(itr: int, obj: pyuvm._s05_base_classes.uvm_object) -> pyuvm._s10_synchronization_classes.uvm_callback | None :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks.get_first :abstractmethod: :classmethod: ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks.get_first ``` ```` ````{py:method} get_last(itr: int, obj: pyuvm._s05_base_classes.uvm_object) -> pyuvm._s10_synchronization_classes.uvm_callback | None :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks.get_last :abstractmethod: :classmethod: ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks.get_last ``` ```` ````{py:method} get_next(itr: int, obj: pyuvm._s05_base_classes.uvm_object) -> pyuvm._s10_synchronization_classes.uvm_callback | None :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks.get_next :abstractmethod: :classmethod: ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks.get_next ``` ```` ````{py:method} get_prev(itr: int, obj: pyuvm._s05_base_classes.uvm_object) -> pyuvm._s10_synchronization_classes.uvm_callback | None :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks.get_prev :abstractmethod: :classmethod: ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks.get_prev ``` ```` ````{py:method} get_all(obj: pyuvm._s05_base_classes.uvm_object) -> list[pyuvm._s10_synchronization_classes.uvm_callback] :canonical: pyuvm._s10_synchronization_classes.uvm_callbacks.get_all :abstractmethod: :classmethod: ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callbacks.get_all ``` ```` ````` `````{py:class} uvm_callback_iter(obj: type[pyuvm._s05_base_classes.uvm_object] | pyuvm._s05_base_classes.uvm_object) :canonical: pyuvm._s10_synchronization_classes.uvm_callback_iter ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callback_iter ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callback_iter.__init__ ``` ````{py:method} __iter__() :canonical: pyuvm._s10_synchronization_classes.uvm_callback_iter.__iter__ ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callback_iter.__iter__ ``` ```` ````{py:method} __next__() -> pyuvm._s10_synchronization_classes.uvm_callback :canonical: pyuvm._s10_synchronization_classes.uvm_callback_iter.__next__ ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callback_iter.__next__ ``` ```` ````{py:method} next() -> pyuvm._s10_synchronization_classes.uvm_callback | None :canonical: pyuvm._s10_synchronization_classes.uvm_callback_iter.next ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callback_iter.next ``` ```` ````{py:method} prev() -> pyuvm._s10_synchronization_classes.uvm_callback | None :canonical: pyuvm._s10_synchronization_classes.uvm_callback_iter.prev ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callback_iter.prev ``` ```` ````{py:method} first() -> pyuvm._s10_synchronization_classes.uvm_callback | None :canonical: pyuvm._s10_synchronization_classes.uvm_callback_iter.first ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callback_iter.first ``` ```` ````{py:method} last() -> pyuvm._s10_synchronization_classes.uvm_callback | None :canonical: pyuvm._s10_synchronization_classes.uvm_callback_iter.last ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callback_iter.last ``` ```` ````{py:method} get_cb() -> pyuvm._s10_synchronization_classes.uvm_callback | None :canonical: pyuvm._s10_synchronization_classes.uvm_callback_iter.get_cb ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_callback_iter.get_cb ``` ```` ````` ````{py:function} uvm_do_callbacks(T: type[pyuvm._s05_base_classes.uvm_object] | pyuvm._s05_base_classes.uvm_object, method: str, *args, **kwargs) -> None :canonical: pyuvm._s10_synchronization_classes.uvm_do_callbacks ```{autodoc2-docstring} pyuvm._s10_synchronization_classes.uvm_do_callbacks ``` ````