Package ghidra.program.util

# Class ProgramChangeRecord

java.lang.Object
ghidra.framework.model.DomainObjectChangeRecord
ghidra.program.util.ProgramChangeRecord

All Implemented Interfaces:
  `Serializable`

public class ProgramChangeRecord extends DomainObjectChangeRecord
Event data for a DomainObjectChangeEvent generated by a Program.

See Program Events for more information on event data.

See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ProgramChangeRecord(int type, int subType, Address start, Address end, Object affectedObj, Object oldValue, Object newValue)`
  Construct a new ProgramChangeRecord; any of the Address or Object params may be null, depending on what the type param is.
  `ProgramChangeRecord(int type, Address start, Address end, Object affectedObj, Object oldValue, Object newValue)`
  Construct a new ProgramChangeRecord; any of the Address or Object params may be null, depending on what the type param is.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Address`
  `getEnd()`
  Get the end address.
  `Object`
  `getObject()`
  Return the object that is the subject of this change record.
  `Address`
  `getStart()`
  Get the start address.

  ### Methods inherited from class ghidra.framework.model.DomainObjectChangeRecord

  `getEventType, getNewValue, getOldValue, getSubEventType, toString`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### ProgramChangeRecord

    public ProgramChangeRecord(int type, Address start, Address end, Object affectedObj, Object oldValue, Object newValue)
    Construct a new ProgramChangeRecord; any of the Address or Object params may be null, depending on what the type param is.
    Parameters:
      `type` - event type
      `start` - starting address that is affected by the event
      `end` - ending address that is affected by the event
      `oldValue` - original value
      `newValue` - new value

  - ### ProgramChangeRecord

    public ProgramChangeRecord(int type, int subType, Address start, Address end, Object affectedObj, Object oldValue, Object newValue)
    Construct a new ProgramChangeRecord; any of the Address or Object params may be null, depending on what the type param is.
    Parameters:
      `type` - event type
      `subType` - event sub-type
      `start` - starting address that is affected by the event
      `end` - ending address that is affected by the event
      `oldValue` - original value
      `newValue` - new value

- ## Method Details

  - ### getStart

    public Address getStart()
    Get the start address.

  - ### getEnd

    public Address getEnd()
    Get the end address.

  - ### getObject

    public Object getObject()
    Return the object that is the subject of this change record.
    Returns:
      Object null if this change record does not have the affected object