Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I want to propose some class interface changes in my project. I feel that changes would be best explained using UML class diagrams.
My project code base is in C++ (RHEL).
Could you please tell me any open source/free tool that works on linux (ubuntu gnome - so preferably gtk app) and can help me to generate the class diagrams given the class declaration for the same.
Thanks,
Amey
As I know Umbrello supports reverse engineering for C++
You can use doxygen:
http://www.doxygen.org
This is not exactly UML but doxygen let you: "visualize the relations between the various elements by means of include dependency graphs, inheritance diagrams, and collaboration diagrams, which are all generated automatically." This is probably what you are looking for.
I have used Dia before. With it you can create many different kinds of diagrams in addition to UML modelling.
Check the Dia Homepage. Take a look at examples and demo.
And yes it is open source and GTK+ based.
This demo is close to what you may want to do.
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
I am looking for a free C++ conditional random field (CRF) implementation but not for text processing.
There are bunch of cool implementations:
CRFsuite (for text processing)
CRF++ (for text processing)
JGMT (Matlab - MEX not C++)
There are other packages like Darwin and HCRF with no usage examples in C++.
I'm wondering if anybody know any C++ CRF library other than what I mentioned above or know any example on how to setup and use Darwin or HCRF?
DGM is a very poserful but simple-to use CRF library, written on C++11. It was designed especially for image processing and includes many usage examples in tutorials.
It also includes the DenseCRF, mentioned in other answer.
DenseCRF is a great library that performs dense conditional random field (fully-connected CRF) very efficiently. The package comes with an easy to understand C++ demo and some examples. It is very fast and produces promising results on image data.
There is DGM C++ library implementing CRFs for image classification: http://research.project-10.de/dgm
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I'm looking for a reverse-engineering UML free tool for c++ code.
The old software i'm working on has almost no documentation, and i must add an evolution :s
So an UML diagram would help me a lot.
I downloaded StarUML, but when i do the reverse engineering, i have an issue, it doesn't display all the classes on the diagram, as if it was too small.
I didn't find the solution so i wanted to download another free tool. But doesn't find one.
Thanks for the answers
Adrien
You could always try Doxygen. It won't produce the most beautiful output of all times, but you can force it to generate class diagrams for you.
One of the best tools I've ever used for reverse engineering to create UML diagrams is Visual Paradigm. I've never used it for C++ but for Java and C#.
Try to take a look:
http://www.visual-paradigm.com/support/documents/vpumluserguide/276/277/7253_reverseengin.html
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
Can you tell me where I can see a some opensource project (only project on C++ language), which is simple graphic editor, сontaining following primitive (for example): an ellipse, a rectangle, a line. And desirable, that to be able to group this primitive in one primitive (for example, Word Grouping -> Group).
Composite pattern use is desirable in this project. I want to see how to organize classes, but more serious for me is to see how organize grouping operation.
I searched for it on codeproject.com codeproject.com, codeplex.com, but not found this.
I have already some source http://pastebin.com/xe4JF5PW
But in my opinion, this code is dirty and ugly. Therefore, I want to see some opensource project for example. Thanks!
In the GoF book "Design Patterns : Elements of Reusable Object-Oriented Software", there is a Case-Study that shows how to employ the patterns. They namely describe the way to use the Composite design pattern for graphical purpose. (Using Glyphs, a glyphs being a graphical component).
They base their case-study on a real text/graphical editor called Lexi.
Unluckily for you, the code is in DELPHI, not C++. But the code is here: LEXI.
However, it is explained among the thourough explanations of the Gang of Four book. You should take a look at the book if the site explanations aren't clear enough.
Inkscape might be what your searching for, it is a popular open source vector graphics editor written (mostly) in c++.
https://code.edge.launchpad.net/~inkscape.dev
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
I'd like to know if there's a tool which allows you to do class definition based on an XML format. I'm not looking for data binding. Anyone can help ?
Thanks
When I had this problem a few years back, I wrote a Python tool to execute Python code embedded in text files so that I could generate C++ code with Python inside the C++: http://nedbatchelder.com/code/cog/
I know of two tools both of them are commercial products
http://www.codesynthesis.com/products/xsd/
Is open source GPL - commercial licence is avalable for commercial use
I think this is/was used by gSOAP
http://www.artima.com/cppsource/xml_data_binding.html
http://www.codalogic.com/lmx/
don't know any more than the web site
I hope this helps.
Update:
Just found this http://en.wikipedia.org/wiki/XML_data_binding#C.2B.2B
Update 2:
This is great, I have been looking for an open source package to do this for ages and your question has just helped my find it:
http://top.touk.pl/confluence/display/xmlbeansxxdoc/Introduction+to+xmlbeansxx
http://top.touk.pl/confluence/download/attachments/458767/Manipulate_XML_Documents_in_CPP_with_xmlbeansxx.pdf
YACC or BISON may be what you are after.
Are UML Class Diagrams what you are looking for?
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
Is there a tool that can parse C++ files within a project and generate UML from it?
Here are a few options:
Step-by-Step Guide to Reverse Engineering Code into UML Diagrams with Microsoft Visio 2000 - http://msdn.microsoft.com/en-us/library/aa140255(office.10).aspx
BoUML - http://bouml.fr/features.html
StarUML - http://staruml.sourceforge.net/en/
Reverse engineering of the UML class diagram from C++ code in presence of weakly typed containers (2001) - http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.27.9064
Umbrello UML Modeller - http://uml.sourceforge.net/
A list of other tools to look at - http://plg.uwaterloo.ca/~migod/uml.html
If its just diagrams that you want, doxygen does a pretty good job.
I've developed a tool called Doxygraph which can parse the XML generated by Doxygen and turn it into an interactive UML class diagram which you can view in a web browser or import into any software that can read Graphviz "dot" files.
I believe Enterprise Architect can do that.
I find that Wikipedia can be a great source of information about such tools, especially for comparison tables. There's a page on UML tools. See in particular the reverse engineered languages column.
UML Studio does this quite well in my experience, and will run in "freeware mode" for small projects.
Seems Umbrello produces best UML from C++ code (suggest to use latest version >= 2.22) comparing to command-line autodia for Dia and other tools.
StarUML have not produced good diagrams for me: strange import, not usable, does not work for many people: https://github.com/staruml/Cpp/issues
I have used Rational Rose and Rational Rhapsody for reverse engineering large projects. I would prefer Rational Rhapsody for getting the UML class files for C++ !
Whoever wants UML deserves Rational Rose :)
StarUML does just that and it is free. Unfortunately it hasn't been updated for a while. There were a couple of offshoot projects (as the project admins wouldn't allow it to be taken over) but they too have died a death.