Class ProcessorFamily

java.lang.Object
com.pnfsoftware.jeb.util.base.DynamicEnum<ProcessorFamily>
com.pnfsoftware.jeb.core.units.codeobject.ProcessorFamily

@Ser public class ProcessorFamily extends DynamicEnum<ProcessorFamily>
Dynamic enumeration of general processor families.
See Also:
  • Field Details

    • map

      protected static LinkedHashMap<String,ProcessorFamily> map
      Registered processor families.
    • UNKNOWN

      public static final ProcessorFamily UNKNOWN
      Unknown processor family.
    • X86

      public static final ProcessorFamily X86
      Intel x86 processor family.
    • ARM

      public static final ProcessorFamily ARM
      ARM processor family.
    • MIPS

      public static final ProcessorFamily MIPS
      MIPS processor family.
    • AVR

      public static final ProcessorFamily AVR
      Atmel AVR processor family.
    • builtinCount

      public static final int builtinCount
      Number of built-in processor families.
  • Constructor Details

    • ProcessorFamily

      protected ProcessorFamily(int id, String name)
      Create a processor family.
      Parameters:
      id - processor family id
      name - processor family name
  • Method Details

    • ordinal

      public int ordinal()
      Get the ordinal value of this family among registered processor families.
      Specified by:
      ordinal in class DynamicEnum<ProcessorFamily>
      Returns:
      ordinal value
    • count

      public static int count()
      Count registered processor families.
      Returns:
      processor family count
    • values

      public static Collection<ProcessorFamily> values()
      Retrieve registered processor families.
      Returns:
      processor families
    • valueOf

      public static ProcessorFamily valueOf(String name)
      Retrieve a processor family by name.
      Parameters:
      name - processor family name
      Returns:
      matching processor family, or UNKNOWN
    • valueOf

      public static ProcessorFamily valueOf(int id)
      Retrieve a processor family by id.
      Parameters:
      id - processor family id
      Returns:
      matching processor family, or UNKNOWN
    • register

      public static ProcessorFamily register(int id, String name)
      Register a processor family.
      Parameters:
      id - processor family id
      name - processor family name
      Returns:
      registered processor family
    • unregister

      public static boolean unregister(String name)
      Unregister a dynamic processor family.
      Parameters:
      name - processor family name
      Returns:
      true if the family was unregistered