Package org.lwjgl.vulkan
Class VkPhysicalDeviceShaderAtomicFloatFeaturesEXT
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkPhysicalDeviceShaderAtomicFloatFeaturesEXT>
org.lwjgl.vulkan.VkPhysicalDeviceShaderAtomicFloatFeaturesEXT
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkPhysicalDeviceShaderAtomicFloatFeaturesEXT
extends org.lwjgl.system.Struct<VkPhysicalDeviceShaderAtomicFloatFeaturesEXT>
implements org.lwjgl.system.NativeResource
Structure describing features supported by VK_EXT_shader_atomic_float.
Description
If the VkPhysicalDeviceShaderAtomicFloatFeaturesEXT structure is included in the pNext chain of the VkPhysicalDeviceFeatures2 structure passed to GetPhysicalDeviceFeatures2, it is filled in to indicate whether each corresponding feature is supported. VkPhysicalDeviceShaderAtomicFloatFeaturesEXT can also be used in the pNext chain of VkDeviceCreateInfo to selectively enable these features.
Valid Usage (Implicit)
Layout
struct VkPhysicalDeviceShaderAtomicFloatFeaturesEXT {
VkStructureType sType();
void * pNext();
VkBool32 shaderBufferFloat32Atomics();
VkBool32 shaderBufferFloat32AtomicAdd();
VkBool32 shaderBufferFloat64Atomics();
VkBool32 shaderBufferFloat64AtomicAdd();
VkBool32 shaderSharedFloat32Atomics();
VkBool32 shaderSharedFloat32AtomicAdd();
VkBool32 shaderSharedFloat64Atomics();
VkBool32 shaderSharedFloat64AtomicAdd();
VkBool32 shaderImageFloat32Atomics();
VkBool32 shaderImageFloat32AtomicAdd();
VkBool32 sparseImageFloat32Atomics();
VkBool32 sparseImageFloat32AtomicAdd();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofVkPhysicalDeviceShaderAtomicFloatFeaturesEXTstructs.Nested classes/interfaces inherited from class org.lwjgl.system.Struct
org.lwjgl.system.Struct.StructValidationNested classes/interfaces inherited from interface org.lwjgl.system.Pointer
org.lwjgl.system.Pointer.Default -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe struct alignment in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionCreates aVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptioncalloc()Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.create()Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance allocated withBufferUtils.create(int capacity) Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Bufferinstance allocated withBufferUtils.create(long address) Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance for the specified memory address.create(long address, int capacity) Create aVkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Bufferinstance at the specified memory.static @Nullable VkPhysicalDeviceShaderAtomicFloatFeaturesEXTcreateSafe(long address) static @Nullable VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.BuffercreateSafe(long address, int capacity) malloc()Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance allocated on the specifiedMemoryStack.static longnpNext(long struct) Unsafe version ofpNext().static voidnpNext(long struct, long value) Unsafe version ofpNext.static intnshaderBufferFloat32AtomicAdd(long struct) Unsafe version ofshaderBufferFloat32AtomicAdd().static voidnshaderBufferFloat32AtomicAdd(long struct, int value) Unsafe version ofshaderBufferFloat32AtomicAdd.static intnshaderBufferFloat32Atomics(long struct) Unsafe version ofshaderBufferFloat32Atomics().static voidnshaderBufferFloat32Atomics(long struct, int value) Unsafe version ofshaderBufferFloat32Atomics.static intnshaderBufferFloat64AtomicAdd(long struct) Unsafe version ofshaderBufferFloat64AtomicAdd().static voidnshaderBufferFloat64AtomicAdd(long struct, int value) Unsafe version ofshaderBufferFloat64AtomicAdd.static intnshaderBufferFloat64Atomics(long struct) Unsafe version ofshaderBufferFloat64Atomics().static voidnshaderBufferFloat64Atomics(long struct, int value) Unsafe version ofshaderBufferFloat64Atomics.static intnshaderImageFloat32AtomicAdd(long struct) Unsafe version ofshaderImageFloat32AtomicAdd().static voidnshaderImageFloat32AtomicAdd(long struct, int value) Unsafe version ofshaderImageFloat32AtomicAdd.static intnshaderImageFloat32Atomics(long struct) Unsafe version ofshaderImageFloat32Atomics().static voidnshaderImageFloat32Atomics(long struct, int value) Unsafe version ofshaderImageFloat32Atomics.static intnshaderSharedFloat32AtomicAdd(long struct) Unsafe version ofshaderSharedFloat32AtomicAdd().static voidnshaderSharedFloat32AtomicAdd(long struct, int value) Unsafe version ofshaderSharedFloat32AtomicAdd.static intnshaderSharedFloat32Atomics(long struct) Unsafe version ofshaderSharedFloat32Atomics().static voidnshaderSharedFloat32Atomics(long struct, int value) Unsafe version ofshaderSharedFloat32Atomics.static intnshaderSharedFloat64AtomicAdd(long struct) Unsafe version ofshaderSharedFloat64AtomicAdd().static voidnshaderSharedFloat64AtomicAdd(long struct, int value) Unsafe version ofshaderSharedFloat64AtomicAdd.static intnshaderSharedFloat64Atomics(long struct) Unsafe version ofshaderSharedFloat64Atomics().static voidnshaderSharedFloat64Atomics(long struct, int value) Unsafe version ofshaderSharedFloat64Atomics.static intnsparseImageFloat32AtomicAdd(long struct) Unsafe version ofsparseImageFloat32AtomicAdd().static voidnsparseImageFloat32AtomicAdd(long struct, int value) Unsafe version ofsparseImageFloat32AtomicAdd.static intnsparseImageFloat32Atomics(long struct) Unsafe version ofsparseImageFloat32Atomics().static voidnsparseImageFloat32Atomics(long struct, int value) Unsafe version ofsparseImageFloat32Atomics.static intnsType(long struct) Unsafe version ofsType().static voidnsType(long struct, int value) Unsafe version ofsType.longpNext()NULLor a pointer to a structure extending this structure.pNext(long value) Sets the specified value to thepNext()field.set(int sType, long pNext, boolean shaderBufferFloat32Atomics, boolean shaderBufferFloat32AtomicAdd, boolean shaderBufferFloat64Atomics, boolean shaderBufferFloat64AtomicAdd, boolean shaderSharedFloat32Atomics, boolean shaderSharedFloat32AtomicAdd, boolean shaderSharedFloat64Atomics, boolean shaderSharedFloat64AtomicAdd, boolean shaderImageFloat32Atomics, boolean shaderImageFloat32AtomicAdd, boolean sparseImageFloat32Atomics, boolean sparseImageFloat32AtomicAdd) Initializes this struct with the specified values.Copies the specified struct data to this struct.booleanindicates whether shaders can perform 32-bit floating-point add atomic operations on storage buffers.shaderBufferFloat32AtomicAdd(boolean value) Sets the specified value to theshaderBufferFloat32AtomicAdd()field.booleanindicates whether shaders can perform 32-bit floating-point load, store and exchange atomic operations on storage buffers.shaderBufferFloat32Atomics(boolean value) Sets the specified value to theshaderBufferFloat32Atomics()field.booleanindicates whether shaders can perform 64-bit floating-point add atomic operations on storage buffers.shaderBufferFloat64AtomicAdd(boolean value) Sets the specified value to theshaderBufferFloat64AtomicAdd()field.booleanindicates whether shaders can perform 64-bit floating-point load, store and exchange atomic operations on storage buffers.shaderBufferFloat64Atomics(boolean value) Sets the specified value to theshaderBufferFloat64Atomics()field.booleanindicates whether shaders can perform 32-bit floating-point add atomic image operations.shaderImageFloat32AtomicAdd(boolean value) Sets the specified value to theshaderImageFloat32AtomicAdd()field.booleanindicates whether shaders can perform 32-bit floating-point load, store and exchange atomic image operations.shaderImageFloat32Atomics(boolean value) Sets the specified value to theshaderImageFloat32Atomics()field.booleanindicates whether shaders can perform 32-bit floating-point add atomic operations on shared and payload memory.shaderSharedFloat32AtomicAdd(boolean value) Sets the specified value to theshaderSharedFloat32AtomicAdd()field.booleanindicates whether shaders can perform 32-bit floating-point load, store and exchange atomic operations on shared and payload memory.shaderSharedFloat32Atomics(boolean value) Sets the specified value to theshaderSharedFloat32Atomics()field.booleanindicates whether shaders can perform 64-bit floating-point add atomic operations on shared and payload memory.shaderSharedFloat64AtomicAdd(boolean value) Sets the specified value to theshaderSharedFloat64AtomicAdd()field.booleanindicates whether shaders can perform 64-bit floating-point load, store and exchange atomic operations on shared and payload memory.shaderSharedFloat64Atomics(boolean value) Sets the specified value to theshaderSharedFloat64Atomics()field.intsizeof()booleanindicates whether 32-bit floating-point add atomic operations can be used on sparse images.sparseImageFloat32AtomicAdd(boolean value) Sets the specified value to thesparseImageFloat32AtomicAdd()field.booleanindicates whether 32-bit floating-point load, store and exchange atomic operations can be used on sparse images.sparseImageFloat32Atomics(boolean value) Sets the specified value to thesparseImageFloat32Atomics()field.intsType()aVkStructureTypevalue identifying this structure.sType(int value) Sets the specified value to thesType()field.Sets theSTRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXTvalue to thesType()field.Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, validateMethods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toStringMethods inherited from interface org.lwjgl.system.NativeResource
close, free
-
Field Details
-
SIZEOF
public static final int SIZEOFThe struct size in bytes. -
ALIGNOF
public static final int ALIGNOFThe struct alignment in bytes. -
STYPE
public static final int STYPEThe struct member offsets. -
PNEXT
public static final int PNEXTThe struct member offsets. -
SHADERBUFFERFLOAT32ATOMICS
public static final int SHADERBUFFERFLOAT32ATOMICSThe struct member offsets. -
SHADERBUFFERFLOAT32ATOMICADD
public static final int SHADERBUFFERFLOAT32ATOMICADDThe struct member offsets. -
SHADERBUFFERFLOAT64ATOMICS
public static final int SHADERBUFFERFLOAT64ATOMICSThe struct member offsets. -
SHADERBUFFERFLOAT64ATOMICADD
public static final int SHADERBUFFERFLOAT64ATOMICADDThe struct member offsets. -
SHADERSHAREDFLOAT32ATOMICS
public static final int SHADERSHAREDFLOAT32ATOMICSThe struct member offsets. -
SHADERSHAREDFLOAT32ATOMICADD
public static final int SHADERSHAREDFLOAT32ATOMICADDThe struct member offsets. -
SHADERSHAREDFLOAT64ATOMICS
public static final int SHADERSHAREDFLOAT64ATOMICSThe struct member offsets. -
SHADERSHAREDFLOAT64ATOMICADD
public static final int SHADERSHAREDFLOAT64ATOMICADDThe struct member offsets. -
SHADERIMAGEFLOAT32ATOMICS
public static final int SHADERIMAGEFLOAT32ATOMICSThe struct member offsets. -
SHADERIMAGEFLOAT32ATOMICADD
public static final int SHADERIMAGEFLOAT32ATOMICADDThe struct member offsets. -
SPARSEIMAGEFLOAT32ATOMICS
public static final int SPARSEIMAGEFLOAT32ATOMICSThe struct member offsets. -
SPARSEIMAGEFLOAT32ATOMICADD
public static final int SPARSEIMAGEFLOAT32ATOMICADDThe struct member offsets.
-
-
Constructor Details
-
VkPhysicalDeviceShaderAtomicFloatFeaturesEXT
Creates aVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance at the current position of the specifiedByteBuffercontainer. Changes to the buffer's content will be visible to the struct instance and vice versa.The created instance holds a strong reference to the container object.
-
-
Method Details
-
sizeof
public int sizeof()- Specified by:
sizeofin classorg.lwjgl.system.Struct<VkPhysicalDeviceShaderAtomicFloatFeaturesEXT>
-
sType
public int sType()aVkStructureTypevalue identifying this structure. -
pNext
public long pNext()NULLor a pointer to a structure extending this structure. -
shaderBufferFloat32Atomics
public boolean shaderBufferFloat32Atomics()indicates whether shaders can perform 32-bit floating-point load, store and exchange atomic operations on storage buffers. -
shaderBufferFloat32AtomicAdd
public boolean shaderBufferFloat32AtomicAdd()indicates whether shaders can perform 32-bit floating-point add atomic operations on storage buffers. -
shaderBufferFloat64Atomics
public boolean shaderBufferFloat64Atomics()indicates whether shaders can perform 64-bit floating-point load, store and exchange atomic operations on storage buffers. -
shaderBufferFloat64AtomicAdd
public boolean shaderBufferFloat64AtomicAdd()indicates whether shaders can perform 64-bit floating-point add atomic operations on storage buffers. -
shaderImageFloat32Atomics
public boolean shaderImageFloat32Atomics()indicates whether shaders can perform 32-bit floating-point load, store and exchange atomic image operations. -
shaderImageFloat32AtomicAdd
public boolean shaderImageFloat32AtomicAdd()indicates whether shaders can perform 32-bit floating-point add atomic image operations. -
sparseImageFloat32Atomics
public boolean sparseImageFloat32Atomics()indicates whether 32-bit floating-point load, store and exchange atomic operations can be used on sparse images. -
sparseImageFloat32AtomicAdd
public boolean sparseImageFloat32AtomicAdd()indicates whether 32-bit floating-point add atomic operations can be used on sparse images. -
sType
Sets the specified value to thesType()field. -
sType$Default
Sets theSTRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXTvalue to thesType()field. -
pNext
Sets the specified value to thepNext()field. -
shaderBufferFloat32Atomics
Sets the specified value to theshaderBufferFloat32Atomics()field. -
shaderBufferFloat32AtomicAdd
Sets the specified value to theshaderBufferFloat32AtomicAdd()field. -
shaderBufferFloat64Atomics
Sets the specified value to theshaderBufferFloat64Atomics()field. -
shaderBufferFloat64AtomicAdd
Sets the specified value to theshaderBufferFloat64AtomicAdd()field. -
shaderImageFloat32Atomics
Sets the specified value to theshaderImageFloat32Atomics()field. -
shaderImageFloat32AtomicAdd
Sets the specified value to theshaderImageFloat32AtomicAdd()field. -
sparseImageFloat32Atomics
Sets the specified value to thesparseImageFloat32Atomics()field. -
sparseImageFloat32AtomicAdd
Sets the specified value to thesparseImageFloat32AtomicAdd()field. -
set
public VkPhysicalDeviceShaderAtomicFloatFeaturesEXT set(int sType, long pNext, boolean shaderBufferFloat32Atomics, boolean shaderBufferFloat32AtomicAdd, boolean shaderBufferFloat64Atomics, boolean shaderBufferFloat64AtomicAdd, boolean shaderSharedFloat32Atomics, boolean shaderSharedFloat32AtomicAdd, boolean shaderSharedFloat64Atomics, boolean shaderSharedFloat64AtomicAdd, boolean shaderImageFloat32Atomics, boolean shaderImageFloat32AtomicAdd, boolean sparseImageFloat32Atomics, boolean sparseImageFloat32AtomicAdd) Initializes this struct with the specified values. -
set
public VkPhysicalDeviceShaderAtomicFloatFeaturesEXT set(VkPhysicalDeviceShaderAtomicFloatFeaturesEXT src) Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance allocated withBufferUtils. -
create
Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Buffer create(long address, int capacity) Create aVkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Buffer createSafe(long address, int capacity) -
malloc
public static VkPhysicalDeviceShaderAtomicFloatFeaturesEXT malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkPhysicalDeviceShaderAtomicFloatFeaturesEXT calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nsType
public static int nsType(long struct) Unsafe version ofsType(). -
npNext
public static long npNext(long struct) Unsafe version ofpNext(). -
nshaderBufferFloat32Atomics
public static int nshaderBufferFloat32Atomics(long struct) Unsafe version ofshaderBufferFloat32Atomics(). -
nshaderBufferFloat32AtomicAdd
public static int nshaderBufferFloat32AtomicAdd(long struct) Unsafe version ofshaderBufferFloat32AtomicAdd(). -
nshaderBufferFloat64Atomics
public static int nshaderBufferFloat64Atomics(long struct) Unsafe version ofshaderBufferFloat64Atomics(). -
nshaderBufferFloat64AtomicAdd
public static int nshaderBufferFloat64AtomicAdd(long struct) Unsafe version ofshaderBufferFloat64AtomicAdd(). -
nshaderImageFloat32Atomics
public static int nshaderImageFloat32Atomics(long struct) Unsafe version ofshaderImageFloat32Atomics(). -
nshaderImageFloat32AtomicAdd
public static int nshaderImageFloat32AtomicAdd(long struct) Unsafe version ofshaderImageFloat32AtomicAdd(). -
nsparseImageFloat32Atomics
public static int nsparseImageFloat32Atomics(long struct) Unsafe version ofsparseImageFloat32Atomics(). -
nsparseImageFloat32AtomicAdd
public static int nsparseImageFloat32AtomicAdd(long struct) Unsafe version ofsparseImageFloat32AtomicAdd(). -
nsType
public static void nsType(long struct, int value) Unsafe version ofsType. -
npNext
public static void npNext(long struct, long value) Unsafe version ofpNext. -
nshaderBufferFloat32Atomics
public static void nshaderBufferFloat32Atomics(long struct, int value) Unsafe version ofshaderBufferFloat32Atomics. -
nshaderBufferFloat32AtomicAdd
public static void nshaderBufferFloat32AtomicAdd(long struct, int value) Unsafe version ofshaderBufferFloat32AtomicAdd. -
nshaderBufferFloat64Atomics
public static void nshaderBufferFloat64Atomics(long struct, int value) Unsafe version ofshaderBufferFloat64Atomics. -
nshaderBufferFloat64AtomicAdd
public static void nshaderBufferFloat64AtomicAdd(long struct, int value) Unsafe version ofshaderBufferFloat64AtomicAdd. -
nshaderImageFloat32Atomics
public static void nshaderImageFloat32Atomics(long struct, int value) Unsafe version ofshaderImageFloat32Atomics. -
nshaderImageFloat32AtomicAdd
public static void nshaderImageFloat32AtomicAdd(long struct, int value) Unsafe version ofshaderImageFloat32AtomicAdd. -
nsparseImageFloat32Atomics
public static void nsparseImageFloat32Atomics(long struct, int value) Unsafe version ofsparseImageFloat32Atomics. -
nsparseImageFloat32AtomicAdd
public static void nsparseImageFloat32AtomicAdd(long struct, int value) Unsafe version ofsparseImageFloat32AtomicAdd.
-