Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Open sidebar
Institute of Technical Acoustics (ITA)
VAMatlab
Commits
29503a82
Commit
29503a82
authored
Apr 26, 2017
by
Dipl.-Ing. Jonas Stienen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixing problems with itaVA matlab build script
parent
e7f1897d
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
59 additions
and
0 deletions
+59
-0
matlab/itaVA_build.m
matlab/itaVA_build.m
+59
-0
No files found.
matlab/itaVA_build.m
0 → 100644
View file @
29503a82
% THIS FILE WILL BE OVERWRITTEN BY CMAKE WITHOUT WARNING
%
% Code generator for the VA Matlab interface facade class
%
% Desc: This script generates the code for the Matlab
% facade class to the VAInterface MEXExtension.
% It takes the class template code and inserts
% all stubs for the functions in the VAConnector
% interface. These are derived using the reflexion
% mechanism ('enumerateFunctions')
%
script_dir
=
'C:/dev/VA/dist/VA.v2017b_win32-x64.vc12/matlab'
;
% Matlab scripts target directory
deploy_dir
=
'C:/dev/VA/dist/VA.v2017b_win32-x64.vc12/bin'
;
% Deploy directory, i.e. 'C:/dev/VA/dist/win32-x64.vc12'
lib_dir
=
'C:/dev/VA/dist/VA.v2017b_win32-x64.vc12/lib'
;
if
exist
(
deploy_dir
,
'dir'
)
~=
7
error
(
'Deploy dir
''
%s
''
does not exist. Please build and install VAMatlab first.'
,
deploy_dir
)
end
if
exist
(
script_dir
,
'dir'
)
~=
7
mkdir
(
script_dir
);
end
if
exist
(
[
'VAMatlab'
mexext
],
'file'
)
warning
(
'VAMatlab already found at location "%s", are you sure to build itaVA against this executable? Will proceed now.'
,
which
(
'VAMatlab'
)
)
else
% Add to PATH temporarily and attempt to move lib to bin dir
addpath
(
script_dir
,
deploy_dir
)
[
s
]
=
movefile
(
fullfile
(
lib_dir
,
'VAMatlab*'
),
deploy_dir
);
if
~
s
&&
~
exist
(
[
'VAMatlab'
'.'
mexext
],
'file'
)
error
(
'Could locate VAMatlab executable. Please make sure that it can be found.'
)
end
end
% Parameters
templateFile
=
'itaVA.m.proto'
;
outputFile
=
fullfile
(
script_dir
,
'itaVA.m'
);
fprintf
(
'Generating code for itaVA Matlab class
''
%s
''
...\n'
,
outputFile
);
code
=
fileread
(
templateFile
);
stubCode
=
itaVA_generateStubs
();
code
=
strrep
(
code
,
'###STUBCODE###'
,
stubCode
);
% Write the results
fid
=
fopen
(
outputFile
,
'w'
);
fprintf
(
fid
,
'%s'
,
code
);
fclose
(
fid
);
fprintf
(
'Matlab class
''
%s
''
successfully built\n'
,
outputFile
);
% Install examples
copyfile
(
'itaVA_example*'
,
script_dir
);
% Remove from MATLABPATH (otherwise naming conflicts may occur with
% ITA-Toolbox/applications/VirtualAcoustics/VA/* scripts)
rmpath
(
script_dir
,
deploy_dir
)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment