# uvm_subscriber

This class provides an analysis export for receiving transactions from a connected analysis export. Making such a connection “subscribes” this component to any transactions emitted by the connected analysis port.

Subtypes of this class must define the write method to process the incoming transactions. This class is particularly useful when designing a coverage collector that attaches to a monitor.

Summary

uvm_subscriber
This class provides an analysis export for receiving transactions from a connected analysis export.
Class Hierarchy
uvm_void
uvm_object
uvm_report_object
uvm_component
uvm_subscriber
Class Declaration
> virtual class uvm_subscriber #(
> | type | T | = | int
> ) extends uvm_component
Ports |
analysis_export | This export provides access to the write method, which derived subscribers must implement.
Methods |
new | Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any.
write | A pure virtual method that must be defined in each subclass.

### Ports

### analysis_export

This export provides access to the write method, which derived subscribers must implement.

### Methods

### new

> function new (
> | string | name,
> | uvm_component | parent
> )

Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any.

### write

> pure virtual function void write(
> | T | t
> )

A pure virtual method that must be defined in each subclass. Access to this method by outside components should be done via the analysis_export.

> virtual class uvm_void

The uvm_void class is the base class for all UVM classes.

> virtual class uvm_object extends uvm_void

The uvm_object class is the base class for all UVM data and hierarchical classes.

> class uvm_report_object extends uvm_object

The uvm_report_object provides an interface to the UVM reporting facility.

> virtual class uvm_component extends uvm_report_object

The uvm_component class is the root base class for UVM components.

> virtual class uvm_subscriber #(
> | type | T | = | int
> ) extends uvm_component

This class provides an analysis export for receiving transactions from a connected analysis export.

> function new (
> | string | name,
> | uvm_component | parent
> )

Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any.

> pure virtual function void write(
> | T | t
> )

A pure virtual method that must be defined in each subclass.