Package com.jogamp.nativewindow
Class CapabilitiesFilter
- java.lang.Object
-
- com.jogamp.nativewindow.CapabilitiesFilter
-
- Direct Known Subclasses:
GLCapabilitiesFilter
public class CapabilitiesFilter extends Object
Diverse reusableCapabilitiesImmutablelist filter
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceCapabilitiesFilter.Test<C extends CapabilitiesImmutable>Generic filter criteriastatic classCapabilitiesFilter.TestLessColorCompBits<C extends CapabilitiesImmutable>static classCapabilitiesFilter.TestMoreColorCompBits<C extends CapabilitiesImmutable>static classCapabilitiesFilter.TestUnmatchedNativeVisualID<C extends CapabilitiesImmutable>
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <C extends CapabilitiesImmutable>
ArrayList<C>removeMatching(ArrayList<C> availableCaps, List<CapabilitiesFilter.Test<C>> criteria)Removing allCapabilitiesImmutablederived elements matching the givencriteriaCapabilitiesFilter.Testlist.static <C extends CapabilitiesImmutable>
ArrayList<C>removeMoreColorComps(ArrayList<C> availableCaps, int maxColorCompBits)Filter removing allCapabilitiesImmutablederived elements having color components >maxColorCompBitsincluding alpha.static <C extends CapabilitiesImmutable>
ArrayList<C>removeMoreColorCompsAndUnmatchingNativeVisualID(ArrayList<C> availableCaps, int maxColorCompBits, int requiredNativeVisualID)Filter removing allCapabilitiesImmutablederived elements having color components >maxColorCompBitsincluding alpha.static <C extends CapabilitiesImmutable>
ArrayList<C>removeUnmatchingNativeVisualID(ArrayList<C> availableCaps, int requiredNativeVisualID)IfrequiredNativeVisualIDis notVisualIDHolder.VID_UNDEFINEDand hence specific, this filter removes all non-matching nativeVisualIDVIDType.NATIVE.
-
-
-
Method Detail
-
removeMatching
public static <C extends CapabilitiesImmutable> ArrayList<C> removeMatching(ArrayList<C> availableCaps, List<CapabilitiesFilter.Test<C>> criteria)
Removing allCapabilitiesImmutablederived elements matching the givencriteriaCapabilitiesFilter.Testlist.- Parameters:
availableCaps-CapabilitiesImmutablederived list to be filteredcriteria-CapabilitiesFilter.Testlist run on all non-removedCapabilitiesImmutablederived elements- Returns:
- the list of removed
CapabilitiesImmutablederived elements, might be of size 0 if none were removed.
-
removeUnmatchingNativeVisualID
public static <C extends CapabilitiesImmutable> ArrayList<C> removeUnmatchingNativeVisualID(ArrayList<C> availableCaps, int requiredNativeVisualID)
IfrequiredNativeVisualIDis notVisualIDHolder.VID_UNDEFINEDand hence specific, this filter removes all non-matching nativeVisualIDVIDType.NATIVE.Otherwise, if
requiredNativeVisualIDequalsVisualIDHolder.VID_UNDEFINED, none is removed.- Parameters:
availableCaps- list ofCapabilitiesImmutablederived elements to be filteredrequiredNativeVisualID- if notVisualIDHolder.VID_UNDEFINED, remove all non-matching nativeVisualID's- Returns:
- the list of removed
CapabilitiesImmutablederived elements, might be of size 0 if none were removed.
-
removeMoreColorComps
public static <C extends CapabilitiesImmutable> ArrayList<C> removeMoreColorComps(ArrayList<C> availableCaps, int maxColorCompBits)
Filter removing allCapabilitiesImmutablederived elements having color components >maxColorCompBitsincluding alpha.- Parameters:
availableCaps- list ofCapabilitiesImmutablederived elements to be filteredmaxColorCompBits- maximum tolerated color component bits- Returns:
- the list of removed
CapabilitiesImmutablederived elements, might be of size 0 if none were removed.
-
removeMoreColorCompsAndUnmatchingNativeVisualID
public static <C extends CapabilitiesImmutable> ArrayList<C> removeMoreColorCompsAndUnmatchingNativeVisualID(ArrayList<C> availableCaps, int maxColorCompBits, int requiredNativeVisualID)
Filter removing allCapabilitiesImmutablederived elements having color components >maxColorCompBitsincluding alpha.If
requiredNativeVisualIDis notVisualIDHolder.VID_UNDEFINEDand hence specific, this filter also removes all non-matching nativeVisualIDVIDType.NATIVE.- Parameters:
availableCaps- list ofCapabilitiesImmutablederived elements to be filteredmaxColorCompBits- maximum tolerated color component bitsrequiredNativeVisualID- if notVisualIDHolder.VID_UNDEFINED, also remove all non-matching nativeVisualID's- Returns:
- the list of removed
CapabilitiesImmutablederived elements, might be of size 0 if none were removed. - See Also:
removeUnmatchingNativeVisualID(ArrayList, int),removeMoreColorComps(ArrayList, int)
-
-