Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
matrix.hpp File Reference
#include <array>
#include <cmath>
#include <cstring>

Go to the source code of this file.

Classes

struct  pulp::signal::Matrix< N, SampleType >
 NxN matrix stored in row-major order. More...
struct  pulp::signal::Vec3
 Transform a 3D vector by a 4x4 matrix (assumes w=1). More...

Namespaces

namespace  pulp
namespace  pulp::signal

Typedefs

using pulp::signal::Matrix2 = Matrix<2>
using pulp::signal::Matrix3 = Matrix<3>
using pulp::signal::Matrix4 = Matrix<4>
using pulp::signal::Matrix2d = Matrix<2, double>
using pulp::signal::Matrix3d = Matrix<3, double>
using pulp::signal::Matrix4d = Matrix<4, double>

Functions

template<typename SampleType>
SampleType pulp::signal::determinant (const Matrix< 2, SampleType > &m)
 Determinant of a 2x2 matrix.
template<typename SampleType>
SampleType pulp::signal::determinant (const Matrix< 3, SampleType > &m)
 Determinant of a 3x3 matrix.
Matrix4 pulp::signal::translation_matrix (float x, float y, float z)
 4x4 translation matrix
Matrix4 pulp::signal::scale_matrix (float sx, float sy, float sz)
 4x4 scale matrix
Matrix4 pulp::signal::rotation_x (float radians)
 4x4 rotation around X axis
Matrix4 pulp::signal::rotation_y (float radians)
 4x4 rotation around Y axis
Matrix4 pulp::signal::rotation_z (float radians)
 4x4 rotation around Z axis
Vec3 pulp::signal::transform (const Matrix4 &m, const Vec3 &v)