Whether functions from Bioinformatics Toolbox can be compiled with deploytool?
Show older comments
The following file testbio.m has four lines and there are error after compliled with deploytool.
function testbio()
cm = [0 1 1 0 0;1 0 0 1 1;1 0 0 0 0;0 0 0 0 1;1 0 1 0 0];
bg = biograph(cm);
g = biograph.bggui(bg);
Error in mccExcludedFiles.log is as following;
D:\Program Files\MATLAB\R2012a\toolbox\bioinfo\bioinfo\@biograph\@biograph\view.m
called by D:\ws_matlab\pinkpot\xiaohua.m
(because of toolbox compilability rules)
D:\Program Files\MATLAB\R2012a\toolbox\bioinfo\bioinfo\@biograph\@biograph\view.m
called by D:\Program Files\MATLAB\R2012a\toolbox\bioinfo\bioinfo\@biograph\biograph.m
(because of toolbox compilability rules)
D:\Program Files\MATLAB\R2012a\toolbox\bioinfo\bioinfo\@biograph\@biograph\view.m
called by D:\Program Files\MATLAB\R2012a\toolbox\matlab\specgraph\private\barHGUsingMATLABClasses.p
(because of toolbox compilability rules)
D:\Program Files\MATLAB\R2012a\toolbox\bioinfo\bioinfo\@biograph\@biograph\view.m
called by D:\Program Files\MATLAB\R2012a\toolbox\matlab\specgraph\private\barV6.m
(because of toolbox compilability rules)
Would you do me a favor , experts?
Dowen
Answers (2)
Walter Roberson
on 16 Dec 2012
0 votes
The documentation indicates http://www.mathworks.com/products/compiler/supported/compiler_support.html that all command line functionality is compilable for that toolbox, but the GUIs are not. So biograph() should be compilable, but biograph.bggui is a GUI and so would not be compilable.
6 Comments
Hua Wei
on 16 Dec 2012
If my end goal is to print a biograph to a figure in a stand alone application, is there a work around to get the figure since 'view(biograph)' can't be complied? Thanks
Image Analyst
on 16 Dec 2012
Take the needed functionality - the low level routines - and replicate their GUI that they won't let you include. Usually the basic routines can be compiled but the fancy GUIs that they have, like imtool in the Image Processing Toolbox, cannot be included. So if you want that GUI then you basically have to build it yourself and then you can include it, obviously because it's your GUI at that point.
Hua Wei
on 16 Dec 2012
As per you said, do you think 'biograph.bggui' is 'basic routine' or 'fancy GUIs' ?
Image Analyst
on 16 Dec 2012
Edited: Image Analyst
on 16 Dec 2012
I don't have that toolbox but it sounds like it has a special GUI associated with it so that's probably why they won't let you compile it in with your application. But it's made up of low level functions with no user interface so if you can figure out what those are, then you can build your own GUI to do the same thing.
Walter Roberson
on 16 Dec 2012
It doesn't really matter what we would call biograph viewer: Mathworks made the decision.
If confirmation from Mathworks is needed as to whether my interpretation of the documentation is correct that this is a non-compilable function (as the error messages say it is), then I recommend opening a support case.
Hua Wei
on 16 Dec 2012
Yes , 'biograph.bggui' is a toolbox GUI that can't be compiled , it shows clear in mccExcludedFiles.log.
Hua Wei
on 16 Dec 2012
0 votes
Toolbox GUIs can't compiled, but user developed GUI can. According to Image Analyst, I replicate the basic functionality from 'bggui' to my gui(named 'bgfig') and add it as a class of 'biograph'. The main app invoke my gui and my gui invoke 'biograph.bgfig' internally. This method can get view of biograph and runs smoothly as a stand alone application. Thank you all, Walter Roberson , Image Analyst and Wen !
4 Comments
Image Analyst
on 16 Dec 2012
Edited: Image Analyst
on 16 Dec 2012
Glad you got it working. Go ahead and officially mark this as "Answered" (Walter's answer, not yours).
Hua Wei
on 17 Dec 2012
How to mark it as "Answered" ?
Walter Roberson
on 17 Dec 2012
You can't -- you aren't the original poster.
lingyu yin
on 24 Apr 2022
Hello, I have encountered the same problem, which has bothered me for a long time. After reading your answer for many times, I do not understand how you add it as “biograph”class,Because there's a built-in class by that name in system,Did you make any changes in bgfig, Would you mind showing me the code for bgFIG and class declaration definitions
Categories
Find more on C Shared Library Integration in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!