working on comples64

This commit is contained in:
2026-04-10 16:28:25 -04:00
parent a8ed51a904
commit f315dfb6f6
48 changed files with 551 additions and 2523 deletions

View File

@ -1,10 +1,10 @@
#ifndef __CUVECT4F_HPP__
#define __CUVECT4F_HPP__
#ifndef __cuvec4f_HPP__
#define __cuvec4f_HPP__
namespace amscuda
{
class cuvect4f
class cuvec4f
{
public:
float x;
@ -12,18 +12,18 @@ namespace amscuda
float z;
float w;
__host__ __device__ cuvect4f();
__host__ __device__ ~cuvect4f();
__host__ __device__ cuvect4f(float _x, float _y, float _z, float _w);
__host__ __device__ cuvec4f();
__host__ __device__ ~cuvec4f();
__host__ __device__ cuvec4f(float _x, float _y, float _z, float _w);
__host__ __device__ float& operator[](const int I);
__host__ __device__ const float& operator[](const int I) const;
__host__ __device__ cuvect4f operator+(cuvect4f lhs);
__host__ __device__ cuvect4f operator-(cuvect4f lhs);
__host__ __device__ cuvect4f operator*(float lhs);
__host__ __device__ cuvect4f operator/(float lhs);
__host__ __device__ friend cuvect4f operator-(cuvect4f rhs);
__host__ __device__ cuvec4f operator+(cuvec4f lhs);
__host__ __device__ cuvec4f operator-(cuvec4f lhs);
__host__ __device__ cuvec4f operator*(float lhs);
__host__ __device__ cuvec4f operator/(float lhs);
__host__ __device__ friend cuvec4f operator-(cuvec4f rhs);
};
class cumat4f
@ -41,7 +41,7 @@ namespace amscuda
__host__ __device__ cumat4f operator-(cumat4f lhs);
__host__ __device__ cumat4f operator*(float lhs);
__host__ __device__ cumat4f operator/(float lhs);
__host__ __device__ cuvect4f operator*(cuvect4f lhs);
__host__ __device__ cuvec4f operator*(cuvec4f lhs);
__host__ __device__ cumat4f operator*(cumat4f lhs);
__host__ __device__ friend cumat4f operator-(cumat4f rhs);
@ -50,10 +50,10 @@ namespace amscuda
__host__ __device__ cumat4f inverse();
};
__host__ __device__ float cuvect4f_dot(cuvect4f a, cuvect4f b);
__host__ __device__ float cuvect4f_norm(cuvect4f a);
__host__ __device__ cuvect4f cuvect4f_normalize(cuvect4f a);
__host__ __device__ cuvect4f cuvect4f_proj(cuvect4f a, cuvect4f b);
__host__ __device__ float cuvec4f_dot(cuvec4f a, cuvec4f b);
__host__ __device__ float cuvec4f_norm(cuvec4f a);
__host__ __device__ cuvec4f cuvec4f_normalize(cuvec4f a);
__host__ __device__ cuvec4f cuvec4f_proj(cuvec4f a, cuvec4f b);
};