Merge pull request #589 from tjni/clean-up-build-dependencies
[MACS.git] / MACS3 / Signal / cPosValCalculation.pxd
blob302d58fc845b2ed69c0faca9fecff436a3a4cf79
1 # cython: language_level=3
3 # ------------------------------------
4 # NumPy modules
5 # ------------------------------------
6 import numpy as np
7 cimport numpy as np
8 from numpy cimport int32_t
9 ctypedef np.float32_t float32_t
11 cdef extern from "cPosValCalculation.h":
12     cdef struct PosVal:
13         int pos
14         float value
16     PosVal * single_end_pileup ( int * plus_tags, long l_plus_tags, int * minus_tags, long l_minus_tags, int five_shift, int three_shift, int leftmost_coord, int rightmost_coord,  float scale_factor, float baseline_value, long * final_length ) nogil
18     PosVal * quick_pileup ( int * start_poss, int * end_poss, long length_poss, float scale_factor, float baseline_value, long * final_length ) nogil
20     int * fix_coordinates ( int * poss, long l, int leftmost_coord, int rightmost_coord ) nogil
22     PosVal * max_over_two_pv_array ( PosVal * pva1, long l_pva1, PosVal * pva2, long l_pva2, long * final_length ) nogil
24     void write_pv_array_to_bedGraph ( PosVal * pv_array, long l_pv_array, char * chromosome, char * bdgfile, short append )
26     long quick_pileup_simple ( int32_t * ret_poss, float32_t * ret_values, int32_t * start_poss, int32_t * end_poss, long length_poss, float scale_factor, float baseline_value )