public class IOSurface extends NSObject implements NSSecureCoding
NSObject.Function_instanceMethodForSelector_ret, NSObject.Function_methodForSelector_ret| Modifier | Constructor and Description |
|---|---|
protected |
IOSurface(org.moe.natj.general.Pointer peer) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
_supportsSecureCoding()
This property must return YES on all classes that allow secure coding.
|
static boolean |
accessInstanceVariablesDirectly() |
NSDictionary<java.lang.String,?> |
allAttachments() |
static IOSurface |
alloc() |
long |
allocationSize()
The total allocation size of the IOSurface
|
static IOSurface |
allocWithZone(org.moe.natj.general.ptr.VoidPtr zone) |
boolean |
allowsPixelSizeCasting()
This property returns YES if it is legal to choose an OpenGL or Metal pixel format with a bytes per pixel
value that is different than the bytesPerElement value(s) of this IOSurface.
|
java.lang.Object |
attachmentForKey(java.lang.String key) |
static boolean |
automaticallyNotifiesObserversForKey(java.lang.String key) |
org.moe.natj.general.ptr.VoidPtr |
baseAddress() |
org.moe.natj.general.ptr.VoidPtr |
baseAddressOfPlaneAtIndex(long planeIndex) |
long |
bytesPerElement() |
long |
bytesPerElementOfPlaneAtIndex(long planeIndex) |
long |
bytesPerRow()
Note: These properties may not return well-defined values for planar surfaces
|
long |
bytesPerRowOfPlaneAtIndex(long planeIndex) |
static void |
cancelPreviousPerformRequestsWithTarget(java.lang.Object aTarget) |
static void |
cancelPreviousPerformRequestsWithTargetSelectorObject(java.lang.Object aTarget,
org.moe.natj.objc.SEL aSelector,
java.lang.Object anArgument) |
static NSArray<java.lang.String> |
classFallbacksForKeyedArchiver() |
static org.moe.natj.objc.Class |
classForKeyedUnarchiver() |
static java.lang.String |
debugDescription_static() |
void |
decrementUseCount() |
static java.lang.String |
description_static() |
long |
elementHeight() |
long |
elementHeightOfPlaneAtIndex(long planeIndex) |
long |
elementWidth() |
long |
elementWidthOfPlaneAtIndex(long planeIndex) |
void |
encodeWithCoder(NSCoder coder) |
static long |
hash_static() |
long |
height() |
long |
heightOfPlaneAtIndex(long planeIndex) |
void |
incrementUseCount() |
IOSurface |
init() |
IOSurface |
initWithCoder(NSCoder coder)
NS_DESIGNATED_INITIALIZER
|
IOSurface |
initWithProperties(NSDictionary<java.lang.String,?> properties)
Create a new IOSurface
|
static NSObject.Function_instanceMethodForSelector_ret |
instanceMethodForSelector(org.moe.natj.objc.SEL aSelector) |
static NSMethodSignature |
instanceMethodSignatureForSelector(org.moe.natj.objc.SEL aSelector) |
static boolean |
instancesRespondToSelector(org.moe.natj.objc.SEL aSelector) |
boolean |
isInUse()
There are cases where it is useful to know whether or not an IOSurface buffer is considered to be "in use"
by other users of the same IOSurface.
|
static boolean |
isSubclassOfClass(org.moe.natj.objc.Class aClass) |
static NSSet<java.lang.String> |
keyPathsForValuesAffectingValueForKey(java.lang.String key) |
int |
localUseCount()
The localUseCount property returns the local per-process usage count for an IOSurface.
|
int |
lockWithOptionsSeed(int options,
org.moe.natj.general.ptr.IntPtr seed)
"Lock" or "Unlock" a IOSurface for reading or writing.
|
static IOSurface |
new_objc() |
int |
pixelFormat() |
long |
planeCount()
Return the number of planes in this buffer.
|
void |
removeAllAttachments() |
void |
removeAttachmentForKey(java.lang.String key) |
static boolean |
resolveClassMethod(org.moe.natj.objc.SEL sel) |
static boolean |
resolveInstanceMethod(org.moe.natj.objc.SEL sel) |
int |
seed()
This will return the current seed value of the buffer and is a cheap property to read to see
if the contents of the buffer have changed since the last lock/unlock.
|
void |
setAllAttachments(NSDictionary<java.lang.String,?> dict) |
void |
setAttachmentForKey(java.lang.Object anObject,
java.lang.String key)
These calls let you attach property list types to a IOSurface buffer.
|
int |
setPurgeableOldState(int newState,
org.moe.natj.general.ptr.IntPtr oldState)
See comments in IOSurfaceAPI.h
|
static void |
setVersion_static(long aVersion) |
static org.moe.natj.objc.Class |
superclass_static() |
static boolean |
supportsSecureCoding() |
int |
unlockWithOptionsSeed(int options,
org.moe.natj.general.ptr.IntPtr seed) |
static long |
version_static() |
long |
width()
Basic surface layout information
|
long |
widthOfPlaneAtIndex(long planeIndex)
These properties return information about a particular plane of a IOSurface.
|
accessibilityActivate, accessibilityActivationPoint, accessibilityAssistiveTechnologyFocusedIdentifiers, accessibilityAttributedHint, accessibilityAttributedLabel, accessibilityAttributedUserInputLabels, accessibilityAttributedValue, accessibilityContainerType, accessibilityCustomActions, accessibilityCustomRotors, accessibilityDecrement, accessibilityDragSourceDescriptors, accessibilityDropPointDescriptors, accessibilityElementAtIndex, accessibilityElementCount, accessibilityElementDidBecomeFocused, accessibilityElementDidLoseFocus, accessibilityElementIsFocused, accessibilityElements, accessibilityElementsHidden, accessibilityFrame, accessibilityHint, accessibilityIncrement, accessibilityLabel, accessibilityLanguage, accessibilityNavigationStyle, accessibilityPath, accessibilityPerformEscape, accessibilityPerformMagicTap, accessibilityRespondsToUserInteraction, accessibilityScroll, accessibilityTextualContext, accessibilityTraits, accessibilityUserInputLabels, accessibilityValue, accessibilityViewIsModal, addObserverForKeyPathOptionsContext, attemptRecoveryFromErrorOptionIndex, attemptRecoveryFromErrorOptionIndexDelegateDidRecoverSelectorContextInfo, autoContentAccessingProxy, awakeAfterUsingCoder, awakeFromNib, class_objc, classForCoder, classForKeyedArchiver, copy, dealloc, debugDescription, description, dictionaryWithValuesForKeys, didChangeValueForKey, didChangeValueForKeyWithSetMutationUsingObjects, didChangeValuesAtIndexesForKey, doesNotRecognizeSelector, fileManagerShouldProceedAfterError, fileManagerWillProcessPath, finalize_objc, forwardingTargetForSelector, forwardInvocation, hash, indexOfAccessibilityElement, isAccessibilityElement, isEqual, isKindOfClass, isMemberOfClass, isProxy, methodForSelector, methodSignatureForSelector, mutableArrayValueForKey, mutableArrayValueForKeyPath, mutableCopy, mutableOrderedSetValueForKey, mutableOrderedSetValueForKeyPath, mutableSetValueForKey, mutableSetValueForKeyPath, observationInfo, observeValueForKeyPathOfObjectChangeContext, performSelector, performSelectorInBackgroundWithObject, performSelectorOnMainThreadWithObjectWaitUntilDone, performSelectorOnMainThreadWithObjectWaitUntilDoneModes, performSelectorOnThreadWithObjectWaitUntilDone, performSelectorOnThreadWithObjectWaitUntilDoneModes, performSelectorWithObject, performSelectorWithObjectAfterDelay, performSelectorWithObjectAfterDelayInModes, performSelectorWithObjectWithObject, prepareForInterfaceBuilder, provideImageDataBytesPerRowOrigin_Size_UserInfo, removeObserverForKeyPath, removeObserverForKeyPathContext, replacementObjectForCoder, replacementObjectForKeyedArchiver, respondsToSelector, self, setAccessibilityActivationPoint, setAccessibilityAttributedHint, setAccessibilityAttributedLabel, setAccessibilityAttributedUserInputLabels, setAccessibilityAttributedValue, setAccessibilityContainerType, setAccessibilityCustomActions, setAccessibilityCustomRotors, setAccessibilityDragSourceDescriptors, setAccessibilityDropPointDescriptors, setAccessibilityElements, setAccessibilityElementsHidden, setAccessibilityFrame, setAccessibilityHint, setAccessibilityLabel, setAccessibilityLanguage, setAccessibilityNavigationStyle, setAccessibilityPath, setAccessibilityRespondsToUserInteraction, setAccessibilityTextualContext, setAccessibilityTraits, setAccessibilityUserInputLabels, setAccessibilityValue, setAccessibilityViewIsModal, setIsAccessibilityElement, setNilValueForKey, setObservationInfo, setShouldGroupAccessibilityChildren, setValueForKey, setValueForKeyPath, setValueForUndefinedKey, setValuesForKeysWithDictionary, shouldGroupAccessibilityChildren, superclass, validateValueForKeyError, validateValueForKeyPathError, valueForKey, valueForKeyPath, valueForUndefinedKey, willChangeValueForKey, willChangeValueForKeyWithSetMutationUsingObjects, willChangeValuesAtIndexesForKeypublic static boolean accessInstanceVariablesDirectly()
public NSDictionary<java.lang.String,?> allAttachments()
public static IOSurface alloc()
public static IOSurface allocWithZone(org.moe.natj.general.ptr.VoidPtr zone)
public long allocationSize()
public boolean allowsPixelSizeCasting()
public java.lang.Object attachmentForKey(java.lang.String key)
public static boolean automaticallyNotifiesObserversForKey(java.lang.String key)
public org.moe.natj.general.ptr.VoidPtr baseAddress()
public org.moe.natj.general.ptr.VoidPtr baseAddressOfPlaneAtIndex(long planeIndex)
public long bytesPerElement()
public long bytesPerElementOfPlaneAtIndex(long planeIndex)
public long bytesPerRow()
public long bytesPerRowOfPlaneAtIndex(long planeIndex)
public static void cancelPreviousPerformRequestsWithTarget(java.lang.Object aTarget)
public static void cancelPreviousPerformRequestsWithTargetSelectorObject(java.lang.Object aTarget,
org.moe.natj.objc.SEL aSelector,
java.lang.Object anArgument)
public static NSArray<java.lang.String> classFallbacksForKeyedArchiver()
public static org.moe.natj.objc.Class classForKeyedUnarchiver()
public static java.lang.String debugDescription_static()
public void decrementUseCount()
public static java.lang.String description_static()
public long elementHeight()
public long elementHeightOfPlaneAtIndex(long planeIndex)
public long elementWidth()
public long elementWidthOfPlaneAtIndex(long planeIndex)
public void encodeWithCoder(NSCoder coder)
encodeWithCoder in interface NSCodingpublic static long hash_static()
public long height()
public long heightOfPlaneAtIndex(long planeIndex)
public void incrementUseCount()
public IOSurface initWithCoder(NSCoder coder)
NSCodinginitWithCoder in interface NSCodingpublic IOSurface initWithProperties(NSDictionary<java.lang.String,?> properties)
public static NSObject.Function_instanceMethodForSelector_ret instanceMethodForSelector(org.moe.natj.objc.SEL aSelector)
public static NSMethodSignature instanceMethodSignatureForSelector(org.moe.natj.objc.SEL aSelector)
public static boolean instancesRespondToSelector(org.moe.natj.objc.SEL aSelector)
public boolean isInUse()
The IOSurface use count is similar in concept to any other reference counting scheme. When the global use count of an IOSurface goes to zero, it is no longer considered "in use". When it is anything other than zero, then the IOSurface is still "in use" by someone and therefore anyone attempting to maintain a pool of IOSurfaces to be recycled should not reclaim that IOSurface.
Note that IOSurface maintains both a per-process and an internal system wide usage count. In the current implementation, when the per-process usage count goes from zero to one, the system wide usage count is incremented by one. When the per-process usage count drops back to zero (either via explicit decrement calls or the process terminates), the global usage count is decremented by one.
public static boolean isSubclassOfClass(org.moe.natj.objc.Class aClass)
public static NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey(java.lang.String key)
public int localUseCount()
public int lockWithOptionsSeed(int options,
org.moe.natj.general.ptr.IntPtr seed)
The term "lock" is used loosely in this context, and is simply used along with the "unlock" information to put a bound on CPU access to the raw IOSurface data.
If the seed parameter is non-NULL, IOSurfaceLock() will store the buffer's internal modification seed value at the time you made the lock call. You can compare this value to a value returned previously to determine of the contents of the buffer has been changed since the last lock.
In the case of IOSurfaceUnlock(), the seed value returned will be the internal seed value at the time of the unlock. If you locked the buffer for writing, this value will be incremented as the unlock is performed and the new value will be returned.
See the IOSurfacePropertyKeyLock enums for more information.
Note: Locking and unlocking a IOSurface is not a particularly cheap operation, so care should be taken to avoid the calls whenever possible. The seed values are particularly useful for keeping a cache of the buffer contents.
public static IOSurface new_objc()
public int pixelFormat()
public long planeCount()
public void removeAllAttachments()
public void removeAttachmentForKey(java.lang.String key)
public static boolean resolveClassMethod(org.moe.natj.objc.SEL sel)
public static boolean resolveInstanceMethod(org.moe.natj.objc.SEL sel)
public int seed()
public void setAllAttachments(NSDictionary<java.lang.String,?> dict)
public void setAttachmentForKey(java.lang.Object anObject,
java.lang.String key)
public int setPurgeableOldState(int newState,
org.moe.natj.general.ptr.IntPtr oldState)
public static void setVersion_static(long aVersion)
public static org.moe.natj.objc.Class superclass_static()
public static boolean supportsSecureCoding()
public boolean _supportsSecureCoding()
NSSecureCoding_supportsSecureCoding in interface NSSecureCodingpublic int unlockWithOptionsSeed(int options,
org.moe.natj.general.ptr.IntPtr seed)
public static long version_static()
public long width()
public long widthOfPlaneAtIndex(long planeIndex)