/* voc 2.1.0 [2025/05/18] for gcc LP64 on slackware xtspaF */

#ifndef oocComplexMath__h
#define oocComplexMath__h

#include "SYSTEM.h"

typedef
	struct oocComplexMath_COMPLEXDesc *oocComplexMath_COMPLEX;

typedef
	struct oocComplexMath_COMPLEXDesc {
		INT32 _prvt0;
		char _prvt1[4];
	} oocComplexMath_COMPLEXDesc;


import oocComplexMath_COMPLEX oocComplexMath_i, oocComplexMath_one, oocComplexMath_zero;

import ADDRESS *oocComplexMath_COMPLEXDesc__typ;

import oocComplexMath_COMPLEX oocComplexMath_CMPLX (REAL r, REAL i);
import oocComplexMath_COMPLEX oocComplexMath_Copy (oocComplexMath_COMPLEX z);
import REAL oocComplexMath_ImagPart (oocComplexMath_COMPLEX z);
import BOOLEAN oocComplexMath_IsCMathException (void);
import REAL oocComplexMath_RealPart (oocComplexMath_COMPLEX z);
import REAL oocComplexMath_abs (oocComplexMath_COMPLEX z);
import oocComplexMath_COMPLEX oocComplexMath_add (oocComplexMath_COMPLEX z1, oocComplexMath_COMPLEX z2);
import oocComplexMath_COMPLEX oocComplexMath_arccos (oocComplexMath_COMPLEX z);
import oocComplexMath_COMPLEX oocComplexMath_arcsin (oocComplexMath_COMPLEX z);
import oocComplexMath_COMPLEX oocComplexMath_arctan (oocComplexMath_COMPLEX z);
import REAL oocComplexMath_arg (oocComplexMath_COMPLEX z);
import oocComplexMath_COMPLEX oocComplexMath_conj (oocComplexMath_COMPLEX z);
import oocComplexMath_COMPLEX oocComplexMath_cos (oocComplexMath_COMPLEX z);
import oocComplexMath_COMPLEX oocComplexMath_div (oocComplexMath_COMPLEX z1, oocComplexMath_COMPLEX z2);
import oocComplexMath_COMPLEX oocComplexMath_exp (oocComplexMath_COMPLEX z);
import oocComplexMath_COMPLEX oocComplexMath_ln (oocComplexMath_COMPLEX z);
import oocComplexMath_COMPLEX oocComplexMath_mul (oocComplexMath_COMPLEX z1, oocComplexMath_COMPLEX z2);
import oocComplexMath_COMPLEX oocComplexMath_polarToComplex (REAL abs, REAL arg);
import oocComplexMath_COMPLEX oocComplexMath_power (oocComplexMath_COMPLEX base, REAL exponent);
import oocComplexMath_COMPLEX oocComplexMath_scalarMult (REAL scalar, oocComplexMath_COMPLEX z);
import oocComplexMath_COMPLEX oocComplexMath_sin (oocComplexMath_COMPLEX z);
import oocComplexMath_COMPLEX oocComplexMath_sqrt (oocComplexMath_COMPLEX z);
import oocComplexMath_COMPLEX oocComplexMath_sub (oocComplexMath_COMPLEX z1, oocComplexMath_COMPLEX z2);
import oocComplexMath_COMPLEX oocComplexMath_tan (oocComplexMath_COMPLEX z);
import void *oocComplexMath__init(void);


#endif // oocComplexMath
