Multifunction DAQ

Showing results for 
Search instead for 
Did you mean: 

int32 CVICALLBACK EveryNCallback on gcc



I am configuring a code for continuous sampling using NI-DAQmx (6255). In the ANCI C sample codes, the following is used:


int32 CVICALLBACK EveryNCallback(...


Is this only for CVI environment or can I use it on gcc too?




0 Kudos
Message 1 of 4

Reference here:


Using NI-DAQmx in Text Based Programming Environments


Learn 10 Functions in NI-DAQmx and Handle 80 Percent of Your Data Acquisition Applications


How Can I Use the NI-DAQmx ANSI C Function Library with Borland C and Delphi?

0 Kudos
Message 2 of 4

Nope, I have already generated the necessary library for the gcc compiler. I just want to know whether  " int32 CVICALLBACK EveryNCallback " works on gcc. I am not sure since it calls CVICALLBACK. I was able to compile the sample code. But I dont know if it will work fine with the device.

0 Kudos
Message 3 of 4

CVICALLBACK is just a #define to (ultimately) tell the compiler to use the __cdecl calling convention:

#if defined(__linux__) || defined(__APPLE__)
#define __CFUNC
#define __CFUNC_C
#define CVICDECL
#define __CFUNC         __stdcall
#define __CFUNC_C       __cdecl
#define __CFUNCPTRVAR   __cdecl
#define CVICDECL        __cdecl

Assuming that gcc understands the __cdecl keyword it should work fine.


(In this context "CVICALLBACK" isn't specific to CVI, it refers to any C environment. The "CVI" prefix is present for historic reasons.)

Brandon Streiff ·
0 Kudos
Message 4 of 4