# Interface SmiObjectFilter<S extends SmiObject>

Type Parameters:
  `S` - the concrete `SmiObject` sub-type that this filter operates on.

All Known Implementing Classes:
  `SmiObjectJsonMatcher`

public interface SmiObjectFilter<S extends SmiObject>
The SmiObjectFilter can be used to filter `SmiObject`s according to self defined criteria.

Since:
  1.3.3 (Pro Edition only)
Version:
  1.3.3
Author:
  Frank Fock

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `passesFilter(SmiType smiType)`
  Determines if the given `SmiType` generally passes this filter.
  `boolean`
  `passesFilter(S smiObject)`
  Determines if the supplied smiObject passes the filter or not.

- ## Method Details

  - ### passesFilter

    boolean passesFilter(S smiObject)
    Determines if the supplied smiObject passes the filter or not.
    Parameters:
      `smiObject` - the smiObject to check.
    Returns:
      `true` if smiObject passes the filter or `false` otherwise.

  - ### passesFilter

    boolean passesFilter(SmiType smiType)
    Determines if the given `SmiType` generally passes this filter. This method is called for performance optimization before `passesFilter(SmiObject)`.
    Parameters:
      `smiType` - the SMI object type.
    Returns:
      `true` if smiObjects of smiType passes the filter or `false` otherwise.