| Name | Description | Type | Package | Framework |
| AbstractInstrumenter | Provides the basic templating of how instrumentation should occur. | Class | org.hibernate.bytecode.buildtime.spi | Hibernate ORM |
| BasicClassFilter | BasicClassFilter provides class filtering based on a series of packages to be included and/or a series of explicit class names to be included. | Class | org.hibernate.bytecode.buildtime.spi | Hibernate ORM |
| ClassDescriptor | Contract describing the information Hibernate needs in terms of instrumenting a class, either via ant task or dynamic classloader. | Interface | org.hibernate.bytecode.buildtime.spi | Hibernate ORM |
| ClassFilter | Used to determine whether a class should be instrumented. | Interface | org.hibernate.bytecode.buildtime.spi | Hibernate ORM |
| ExecutionException | Indicates problem performing the instrumentation execution. | Class | org.hibernate.bytecode.buildtime.spi | Hibernate ORM |
| FieldFilter | Used to determine whether a field reference should be instrumented. | Interface | org.hibernate.bytecode.buildtime.spi | Hibernate ORM |
| Instrumenter | Interface | org.hibernate.bytecode.buildtime.spi | Hibernate ORM | |
| Instrumenter .Options | Interface | org.hibernate.bytecode.buildtime.spi.Instrumenter | Hibernate ORM | |
| Logger | Provides an abstraction for how instrumentation does logging because it is usually run in environments (Ant/Maven) with their own logging infrastructure. | Interface | org.hibernate.bytecode.buildtime.spi | Hibernate ORM |