示例#1
0
文件: idgt_fb.c 项目: ltfat/ltfat
LTFAT_API int
LTFAT_NAME(idgt_fb)(const LTFAT_COMPLEX* cin, const LTFAT_TYPE* g,
                    ltfat_int L, ltfat_int gl, ltfat_int W,
                    ltfat_int a, ltfat_int M,
                    const ltfat_phaseconvention ptype, LTFAT_COMPLEX* f)

{
    LTFAT_NAME(idgt_fb_plan)* plan = NULL;
    int status = LTFATERR_SUCCESS;

    CHECKSTATUS(
        LTFAT_NAME(idgt_fb_init)(g, gl, a, M, ptype, FFTW_ESTIMATE, &plan));

    CHECKSTATUS(
        LTFAT_NAME(idgt_fb_execute)(plan, cin, L, W, f));

error:
    if (plan) LTFAT_NAME(idgt_fb_done)(&plan);
    return status;
}
示例#2
0
LTFAT_API int
LTFAT_NAME(fft)(LTFAT_COMPLEX in[], ltfat_int L, ltfat_int W,
                LTFAT_COMPLEX out[])
{
    LTFAT_NAME(fft_plan)* p = NULL;
    int status = LTFATERR_SUCCESS;

    CHECKSTATUS( LTFAT_NAME(fft_init)(L, W, in, out, FFTW_ESTIMATE, &p));
    LTFAT_NAME(fft_execute)(p);
    LTFAT_NAME(fft_done)(&p);
error:
    return status;
}
示例#3
0
文件: pghi.c 项目: ltfat/ltfat
PHASERET_API int
PHASERET_NAME(pghi)(const LTFAT_REAL s[], ltfat_int L,
                    ltfat_int W, ltfat_int a, ltfat_int M,
                    double gamma, LTFAT_COMPLEX c[])
{
    PHASERET_NAME(pghi_plan)* p = NULL;
    int status = LTFATERR_SUCCESS;
    CHECKNULL(s); CHECKNULL(c);
    CHECKSTATUS( PHASERET_NAME(pghi_init)( L, W, a, M, 1e-1, 1e-10, gamma, &p));
    PHASERET_NAME(pghi_execute)(p, s, c); // This cannot fail

    PHASERET_NAME(pghi_done)(&p);
error:
    return status;
}
示例#4
0
// Driver Entry
NTSTATUS DriverEntry(	IN 	PDRIVER_OBJECT 	DriverObject,
						IN	PUNICODE_STRING	RegistryPath)
{
	// Init
	NTSTATUS 				status;	
	WDF_DRIVER_CONFIG 		config;
	WDF_OBJECT_ATTRIBUTES 	colAttributes;
	WDFDRIVER 				hDriver;


	DEBUG("Entry");

	// Register this driver and its add dev method with the WDF
	WDF_DRIVER_CONFIG_INIT(	&config, 	
							GFilterAddDevice);
	status = WdfDriverCreate(	DriverObject, 	
								RegistryPath, 
								WDF_NO_OBJECT_ATTRIBUTES,
								&config,
								&hDriver);
	CHECKSTATUS(status, ERROR("Unable to create driver object"));	
	return(status);
}