io.qt.qt3d.render.QMemoryBarrier Maven / Gradle / Ivy
Show all versions of qtjambi-qt3drender Show documentation
package io.qt.qt3d.render;
import io.qt.*;
/**
* Class to emplace a memory barrier
* Java wrapper for Qt class Qt3DRender::QMemoryBarrier
*/
public class QMemoryBarrier extends io.qt.qt3d.render.QFrameGraphNode
{
/**
* This variable stores the meta-object for the class.
*/
public static final io.qt.core.@NonNull QMetaObject staticMetaObject = io.qt.core.QMetaObject.forType(QMemoryBarrier.class);
/**
* Java wrapper for Qt enum Qt3DRender::QMemoryBarrier::Operation
*
* @see Operations
*/
public enum Operation implements QtFlagEnumerator {
/**
* Representing Qt3DRender:: QMemoryBarrier:: None
*/
None(0),
/**
* Representing Qt3DRender:: QMemoryBarrier:: VertexAttributeArray
*/
VertexAttributeArray(1),
/**
* Representing Qt3DRender:: QMemoryBarrier:: ElementArray
*/
ElementArray(2),
/**
* Representing Qt3DRender:: QMemoryBarrier:: Uniform
*/
Uniform(4),
/**
* Representing Qt3DRender:: QMemoryBarrier:: TextureFetch
*/
TextureFetch(8),
/**
* Representing Qt3DRender:: QMemoryBarrier:: ShaderImageAccess
*/
ShaderImageAccess(16),
/**
* Representing Qt3DRender:: QMemoryBarrier:: Command
*/
Command(32),
/**
* Representing Qt3DRender:: QMemoryBarrier:: PixelBuffer
*/
PixelBuffer(64),
/**
* Representing Qt3DRender:: QMemoryBarrier:: TextureUpdate
*/
TextureUpdate(128),
/**
* Representing Qt3DRender:: QMemoryBarrier:: BufferUpdate
*/
BufferUpdate(256),
/**
* Representing Qt3DRender:: QMemoryBarrier:: FrameBuffer
*/
FrameBuffer(512),
/**
* Representing Qt3DRender:: QMemoryBarrier:: TransformFeedback
*/
TransformFeedback(1024),
/**
* Representing Qt3DRender:: QMemoryBarrier:: AtomicCounter
*/
AtomicCounter(2048),
/**
* Representing Qt3DRender:: QMemoryBarrier:: ShaderStorage
*/
ShaderStorage(4096),
/**
* Representing Qt3DRender:: QMemoryBarrier:: QueryBuffer
*/
QueryBuffer(8192),
/**
* Representing Qt3DRender:: QMemoryBarrier:: All
*/
All(-1);
static {
QtJambi_LibraryUtilities.initialize();
}
private Operation(int value) {
this.value = value;
}
/**
* {@inheritDoc}
*/
public int value() {
return value;
}
/**
* Create a QFlags of the enum entry.
* @return QFlags
*/
public @NonNull Operations asFlags() {
return new Operations(value);
}
/**
* Combines this entry with other enum entry.
* @param e enum entry
* @return new flag
*/
public @NonNull Operations combined(@NonNull Operation e) {
return asFlags().setFlag(e, true);
}
/**
* Excludes other enum entry from a flag of this entry.
* @param e enum entry
* @return new flag
*/
public @NonNull Operations cleared(@NonNull Operation e) {
return asFlags().setFlag(e, false);
}
/**
* Creates a new {@link Operations} from the entries.
* @param values entries
* @return new flag
*/
public static @NonNull Operations flags(@Nullable Operation @NonNull... values) {
return new Operations(values);
}
/**
* Returns the corresponding enum entry for the given value.
* @param value
* @return enum entry
*/
public static @NonNull Operation resolve(int value) {
switch (value) {
case 0: return None;
case 1: return VertexAttributeArray;
case 2: return ElementArray;
case 4: return Uniform;
case 8: return TextureFetch;
case 16: return ShaderImageAccess;
case 32: return Command;
case 64: return PixelBuffer;
case 128: return TextureUpdate;
case 256: return BufferUpdate;
case 512: return FrameBuffer;
case 1024: return TransformFeedback;
case 2048: return AtomicCounter;
case 4096: return ShaderStorage;
case 8192: return QueryBuffer;
case -1: return All;
default: throw new QNoSuchEnumValueException(value);
}
}
private final int value;
}
/**
* {@link QFlags} type for enum {@link Operation}
*/
public static final class Operations extends QFlags implements Comparable {
private static final long serialVersionUID = 0xf54c38a476f13420L;
static {
QtJambi_LibraryUtilities.initialize();
}
/**
* Creates a new Operations where the flags in args
are set.
* @param args enum entries
*/
public Operations(@Nullable Operation @NonNull... args){
super(args);
}
/**
* Creates a new Operations with given value
.
* @param value
*/
public Operations(int value) {
super(value);
}
/**
* Combines this flags with enum entry.
* @param e enum entry
* @return new Operations
*/
@Override
public final @NonNull Operations combined(@StrictNonNull Operation e){
return new Operations(value() | e.value());
}
/**
* Sets the flag e
* @param e enum entry
* @return this
*/
public final @NonNull Operations setFlag(@Nullable Operation e){
return setFlag(e, true);
}
/**
* Sets or clears the flag flag
* @param e enum entry
* @param on set (true) or clear (false)
* @return this
*/
public final @NonNull Operations setFlag(@Nullable Operation e, boolean on){
if (on) {
setValue(value() | e.value());
}else {
setValue(value() & ~e.value());
}
return this;
}
/**
* Returns an array of flag objects represented by this Operations.
* @return array of enum entries
*/
@Override
public final @NonNull Operation @NonNull[] flags(){
return super.flags(Operation.values());
}
/**
* {@inheritDoc}
*/
@Override
public final @NonNull Operations clone(){
return new Operations(value());
}
/**
* {@inheritDoc}
*/
@Override
public final int compareTo(@StrictNonNull Operations other){
return Integer.compare(value(), other.value());
}
}
/**
* See Qt3DRender::QMemoryBarrier:: waitOperationsChanged(Qt3DRender::QMemoryBarrier::Operations)
*/
public final @NonNull Signal1 waitOperationsChanged = new Signal1<>();
/**
* See Qt3DRender::QMemoryBarrier:: QMemoryBarrier(Qt3DCore::QNode*)
*/
@SuppressWarnings({"exports"})
public QMemoryBarrier(io.qt.qt3d.core.@Nullable QNode parent){
super((QPrivateConstructor)null);
initialize_native(this, parent);
}
private native static void initialize_native(QMemoryBarrier instance, io.qt.qt3d.core.QNode parent);
/**
* Function has no implementation because its native counterpart is private.
*/
@Deprecated
@QtUninvokable
@Override
protected final io.qt.qt3d.core.@Nullable QNodeCreatedChangeBase createNodeCreationChange() throws QNoImplementationException {
throw new QNoImplementationException();
}
/**
* See Qt3DRender::QMemoryBarrier:: setWaitOperations(Qt3DRender::QMemoryBarrier::Operations)
*/
public final void setWaitOperations(io.qt.qt3d.render.QMemoryBarrier.@NonNull Operations operations){
setWaitOperations_native_Qt3DRender_QMemoryBarrier_Operations(QtJambi_LibraryUtilities.internal.nativeId(this), operations.value());
}
private native void setWaitOperations_native_Qt3DRender_QMemoryBarrier_Operations(long __this__nativeId, int operations);
/**
* See Qt3DRender::QMemoryBarrier:: waitOperations()const
*/
@QtUninvokable
public final io.qt.qt3d.render.QMemoryBarrier.@NonNull Operations waitOperations(){
return new io.qt.qt3d.render.QMemoryBarrier.Operations(waitOperations_native_constfct(QtJambi_LibraryUtilities.internal.nativeId(this)));
}
@QtUninvokable
private native int waitOperations_native_constfct(long __this__nativeId);
/**
* Constructor for internal use only.
* @param p expected to be null
.
* @hidden
*/
@NativeAccess
protected QMemoryBarrier(QPrivateConstructor p) { super(p); }
/**
* Constructor for internal use only.
* It is not allowed to call the declarative constructor from inside Java.
* @hidden
*/
@NativeAccess
protected QMemoryBarrier(QDeclarativeConstructor constructor) {
super((QPrivateConstructor)null);
initialize_native(this, constructor);
}
@QtUninvokable
private static native void initialize_native(QMemoryBarrier instance, QDeclarativeConstructor constructor);
/**
* Overloaded constructor for {@link #QMemoryBarrier(io.qt.qt3d.core.QNode)}
* with parent = null
.
*/
public QMemoryBarrier() {
this((io.qt.qt3d.core.QNode)null);
}
/**
* Overloaded function for {@link #setWaitOperations(io.qt.qt3d.render.QMemoryBarrier.Operations)}.
*/
public final void setWaitOperations(io.qt.qt3d.render.QMemoryBarrier.@NonNull Operation @NonNull... operations) {
setWaitOperations(new io.qt.qt3d.render.QMemoryBarrier.Operations(operations));
}
}