Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

int32 CVICALLBACK EveryNCallback on gcc

Hello,

 

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?

 

 

Cheers

0 Kudos
Message 1 of 4
(2,840 Views)
0 Kudos
Message 2 of 4
(2,746 Views)

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
(2,709 Views)

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 __CFUNCPTRVAR
#define CVICDECL
#define CVICALLBACK     CVICDECL
#else
#define __CFUNC         __stdcall
#define __CFUNC_C       __cdecl
#define __CFUNCPTRVAR   __cdecl
#define CVICDECL        __cdecl
#define CVICALLBACK     CVICDECL
#endif

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
ni.com/compactdaq · ni.com/daq
0 Kudos
Message 4 of 4
(2,705 Views)