~malept/ubuntu/lucid/python2.6/dev-dependency-fix

« back to all changes in this revision

Viewing changes to Include/complexobject.h

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Klose
  • Date: 2009-02-13 12:51:00 UTC
  • Revision ID: james.westby@ubuntu.com-20090213125100-uufgcb9yeqzujpqw
Tags: upstream-2.6.1
ImportĀ upstreamĀ versionĀ 2.6.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* Complex number structure */
 
2
 
 
3
#ifndef Py_COMPLEXOBJECT_H
 
4
#define Py_COMPLEXOBJECT_H
 
5
#ifdef __cplusplus
 
6
extern "C" {
 
7
#endif
 
8
 
 
9
typedef struct {
 
10
    double real;
 
11
    double imag;
 
12
} Py_complex;
 
13
 
 
14
/* Operations on complex numbers from complexmodule.c */
 
15
 
 
16
#define c_sum _Py_c_sum
 
17
#define c_diff _Py_c_diff
 
18
#define c_neg _Py_c_neg
 
19
#define c_prod _Py_c_prod
 
20
#define c_quot _Py_c_quot
 
21
#define c_pow _Py_c_pow
 
22
#define c_abs _Py_c_abs
 
23
 
 
24
PyAPI_FUNC(Py_complex) c_sum(Py_complex, Py_complex);
 
25
PyAPI_FUNC(Py_complex) c_diff(Py_complex, Py_complex);
 
26
PyAPI_FUNC(Py_complex) c_neg(Py_complex);
 
27
PyAPI_FUNC(Py_complex) c_prod(Py_complex, Py_complex);
 
28
PyAPI_FUNC(Py_complex) c_quot(Py_complex, Py_complex);
 
29
PyAPI_FUNC(Py_complex) c_pow(Py_complex, Py_complex);
 
30
PyAPI_FUNC(double) c_abs(Py_complex);
 
31
 
 
32
 
 
33
/* Complex object interface */
 
34
 
 
35
/*
 
36
PyComplexObject represents a complex number with double-precision
 
37
real and imaginary parts.
 
38
*/
 
39
 
 
40
typedef struct {
 
41
    PyObject_HEAD
 
42
    Py_complex cval;
 
43
} PyComplexObject;     
 
44
 
 
45
PyAPI_DATA(PyTypeObject) PyComplex_Type;
 
46
 
 
47
#define PyComplex_Check(op) PyObject_TypeCheck(op, &PyComplex_Type)
 
48
#define PyComplex_CheckExact(op) (Py_TYPE(op) == &PyComplex_Type)
 
49
 
 
50
PyAPI_FUNC(PyObject *) PyComplex_FromCComplex(Py_complex);
 
51
PyAPI_FUNC(PyObject *) PyComplex_FromDoubles(double real, double imag);
 
52
 
 
53
PyAPI_FUNC(double) PyComplex_RealAsDouble(PyObject *op);
 
54
PyAPI_FUNC(double) PyComplex_ImagAsDouble(PyObject *op);
 
55
PyAPI_FUNC(Py_complex) PyComplex_AsCComplex(PyObject *op);
 
56
 
 
57
#ifdef __cplusplus
 
58
}
 
59
#endif
 
60
#endif /* !Py_COMPLEXOBJECT_H */