//------------------------------------------------------------------------------
//  Pd Spectral Toolkit
//
//  utility.h
//
//  Utility header file
//
//  Created by Cooper Baker on 4/15/12.
//  Updated for 64 Bit Support in September 2019.
//  Copyright (C) 2019 Cooper Baker. All Rights Reserved.
//------------------------------------------------------------------------------

#pragma once

//------------------------------------------------------------------------------
// headers
//------------------------------------------------------------------------------

// main header for pd
#include "m_pd.h"

#include <float.h>

//------------------------------------------------------------------------------
// definitions
//------------------------------------------------------------------------------
#define TRUE           1
#define FALSE          0
#define C_PI           3.1415926535897932384626433832795028841971693993751058209
#define C_2_PI         6.2831853071795864769252867665590057683943387987502116419
#define C_4_PI        12.5663706143591729538505735331180115367886775975004232838
#define C_6_PI        18.8495559215387594307758602996770173051830163962506349258
#define C_8_PI        25.1327412287183459077011470662360230735773551950008465677
#define C_1_OVER_PI    0.3183098861837906715377675267450287240689192914809128974
#define C_1_OVER_2_PI  0.1591549430918953357688837633725143620344596457404564487
#define C_180_OVER_PI 57.2957795130823208767981548141051703324054724665643215491
#define C_PI_OVER_2    1.5707963267948966192313216916397514420985846996875529104
#define C_PI_OVER_180  0.0174532925199432957692369076848861271344287188854172545
#define C_1_OVER_360   0.0027777777777777777777777777777777777777777777777777777
#define C_E            2.7182818284590452353602874713526624977572470936999595749
#define C_FLOAT_MIN    FLT_MIN
#define C_FLOAT_MAX    FLT_MAX


//------------------------------------------------------------------------------
// typedefs
//------------------------------------------------------------------------------
typedef struct T_COMPLEX
{
    t_float r;
    t_float i;

} t_complex;


//------------------------------------------------------------------------------
// inlined functions
//------------------------------------------------------------------------------
#include "utility.inline.h"


//------------------------------------------------------------------------------
// EOF
//------------------------------------------------------------------------------