MATLAB: How to use a protofile with ‘loadlibrary’

calllibData Acquisition Toolboxlibraryloadlibraryprotofileprototype

How do I use a protofile with 'loadlibrary'?

Best Answer

Protofiles provide two benefits when using 'loadlibrary':
  • Protofiles allow you to provide prototypes for a library for which you do not have a header file
  • Providing a protofile to 'loadlibrary' instead of a header file can dramatically speed up execution.
The following code gives an example of how to use a protofile:
if ~libisloaded(libname)
% If the protofile already exists
if exist('myProtofile', 'file') == 2
% Load the library using the protofile, this is much faster
loadlibrary(libname, @myProtofile);
else
% Load the library using the header file, generating the protofile
% Will create a file name 'myProtofile.m' in the current
% directory.
loadlibrary(libname, headerFile, 'mfilename', 'myProtofile.m');
end
end