136 lines
3.1 KiB
Plaintext
136 lines
3.1 KiB
Plaintext
|
/*
|
||
|
** Copyright (c) 2014-2016 The Khronos Group Inc.
|
||
|
**
|
||
|
** Permission is hereby granted, free of charge, to any person obtaining a copy
|
||
|
** of this software and/or associated documentation files (the "Materials"),
|
||
|
** to deal in the Materials without restriction, including without limitation
|
||
|
** the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||
|
** and/or sell copies of the Materials, and to permit persons to whom the
|
||
|
** Materials are furnished to do so, subject to the following conditions:
|
||
|
**
|
||
|
** The above copyright notice and this permission notice shall be included in
|
||
|
** all copies or substantial portions of the Materials.
|
||
|
**
|
||
|
** MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS
|
||
|
** STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND
|
||
|
** HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/
|
||
|
**
|
||
|
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||
|
** OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||
|
** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||
|
** THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||
|
** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||
|
** FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS
|
||
|
** IN THE MATERIALS.
|
||
|
*/
|
||
|
|
||
|
#ifndef GLSLstd450_HPP
|
||
|
#define GLSLstd450_HPP
|
||
|
|
||
|
namespace spv {
|
||
|
|
||
|
constexpr int GLSLstd450Version = 100;
|
||
|
constexpr int GLSLstd450Revision = 1;
|
||
|
|
||
|
enum class GLSLstd450 {
|
||
|
kBad = 0, // Don't use
|
||
|
|
||
|
kRound = 1,
|
||
|
kRoundEven = 2,
|
||
|
kTrunc = 3,
|
||
|
kFAbs = 4,
|
||
|
kSAbs = 5,
|
||
|
kFSign = 6,
|
||
|
kSSign = 7,
|
||
|
kFloor = 8,
|
||
|
kCeil = 9,
|
||
|
kFract = 10,
|
||
|
|
||
|
kRadians = 11,
|
||
|
kDegrees = 12,
|
||
|
kSin = 13,
|
||
|
kCos = 14,
|
||
|
kTan = 15,
|
||
|
kAsin = 16,
|
||
|
kAcos = 17,
|
||
|
kAtan = 18,
|
||
|
kSinh = 19,
|
||
|
kCosh = 20,
|
||
|
kTanh = 21,
|
||
|
kAsinh = 22,
|
||
|
kAcosh = 23,
|
||
|
kAtanh = 24,
|
||
|
kAtan2 = 25,
|
||
|
|
||
|
kPow = 26,
|
||
|
kExp = 27,
|
||
|
kLog = 28,
|
||
|
kExp2 = 29,
|
||
|
kLog2 = 30,
|
||
|
kSqrt = 31,
|
||
|
kInverseSqrt = 32,
|
||
|
|
||
|
kDeterminant = 33,
|
||
|
kMatrixInverse = 34,
|
||
|
|
||
|
kModf = 35, // second operand needs an OpVariable to write to
|
||
|
kModfStruct = 36, // no OpVariable operand
|
||
|
kFMin = 37,
|
||
|
kUMin = 38,
|
||
|
kSMin = 39,
|
||
|
kFMax = 40,
|
||
|
kUMax = 41,
|
||
|
kSMax = 42,
|
||
|
kFClamp = 43,
|
||
|
kUClamp = 44,
|
||
|
kSClamp = 45,
|
||
|
kFMix = 46,
|
||
|
kIMix = 47, // Reserved
|
||
|
kStep = 48,
|
||
|
kSmoothStep = 49,
|
||
|
|
||
|
kFma = 50,
|
||
|
kFrexp = 51, // second operand needs an OpVariable to write to
|
||
|
kFrexpStruct = 52, // no OpVariable operand
|
||
|
kLdexp = 53,
|
||
|
|
||
|
kPackSnorm4x8 = 54,
|
||
|
kPackUnorm4x8 = 55,
|
||
|
kPackSnorm2x16 = 56,
|
||
|
kPackUnorm2x16 = 57,
|
||
|
kPackHalf2x16 = 58,
|
||
|
kPackDouble2x32 = 59,
|
||
|
kUnpackSnorm2x16 = 60,
|
||
|
kUnpackUnorm2x16 = 61,
|
||
|
kUnpackHalf2x16 = 62,
|
||
|
kUnpackSnorm4x8 = 63,
|
||
|
kUnpackUnorm4x8 = 64,
|
||
|
kUnpackDouble2x32 = 65,
|
||
|
|
||
|
kLength = 66,
|
||
|
kDistance = 67,
|
||
|
kCross = 68,
|
||
|
kNormalize = 69,
|
||
|
kFaceForward = 70,
|
||
|
kReflect = 71,
|
||
|
kRefract = 72,
|
||
|
|
||
|
kFindILsb = 73,
|
||
|
kFindSMsb = 74,
|
||
|
kFindUMsb = 75,
|
||
|
|
||
|
kInterpolateAtCentroid = 76,
|
||
|
kInterpolateAtSample = 77,
|
||
|
kInterpolateAtOffset = 78,
|
||
|
|
||
|
kNMin = 79,
|
||
|
kNMax = 80,
|
||
|
kNClamp = 81,
|
||
|
|
||
|
kCount
|
||
|
};
|
||
|
|
||
|
} // namespace spv
|
||
|
|
||
|
#endif // #ifndef GLSLstd450_HPP
|