Download Latest Version src_abc2xml_xml2abc.zip (493.5 kB)
Email in envelope

Get an email when there's a new version of Moritz

Home / Moritz_2.x / Moritz_1.9.01
Name Modified Size InfoDownloads / Week
Parent folder
ReadMe_2010_04_08.txt 2010-04-08 8.3 kB
DeveloperDoc_Moritz2_2010_04_08.zip 2010-04-08 1.4 MB
DeveloperDoc_Moritz2_2010_04_08.chm 2010-04-08 1.3 MB
Src_Moritz2_2010_04_08.zip 2010-04-08 62.6 kB
Moritz2_Linux_2010_04_08.zip 2010-04-08 450.4 kB
Moritz2_WIN32_2010_04_08.zip 2010-04-08 813.4 kB
Totals: 6 Items   4.1 MB 0
Moritz 1.9.01 Distribution 

Copyright (C) 2004-2010 by Eckard Klotz. 

Permission to use, copy, modify, and distribute this software and its 
documentation under the terms of the GNU General Public License is hereby 
granted. No representations are made about the suitability of this software for
any purpose. It is provided "as is" without express or implied warranty. 
See the GNU General Public License for more details. 

Documents produced by Moritz are derivative works derived from the input used in
their production; they are not affected by this license. 

As help-tool for Doxygen (www.Doxygen.org) Moritz was original designed as a 
source-code analysing program that generates nassi-shneiderman diagrams of the 
functions and methods. But this version may also be used to analyse other 
xml-content to generate data-tables or other files.

Nativly this diagrams are stored as html-files. Moritz may be also used to 
gnerate dot-scripts. Thus it is possible to genarate real graphics by using dot 
from the graphviz-toolkit (www.graphviz.org). The output of Moritz may be 
included in a documentation generated by Doxygen via commands like htmlinclude
or dotfile.

Moritz has no own source parser and uses the xml-output of an other parser-
program as base-information. But this new designed version of Moritz comes along
with on own parser-tool named MuLanPa (www.sourceforge.net/projects/mulanpa/) 
that analyses the source-code to generate xml-files wich  represent the 
algorithm and data-structure of the source. MuLanPa will be configured by 
external grammar-description. Thus it may be may be used for several 
programming-languages. 


Moritz and MuLanPa are console- or terminal-application which have to be started
via command-line. Both programs are controled by an external configuration-
files like a grammar-specification that describes the programming-language, a 
snipet-specification that describes the diagram-scripts and xml-defined 
configurations of the behaviour-details. 

You can find more information under "www.sourceforge.net/projects/moritz/" 
use the forum. 


This Distribution contains 4 sub-directories: 

res		: additional ressources for Moritz and the gif-pictures of the diagonal
		  lines to create the if- and switch-tables
src		: example sources
xml		: input-files for Moritz
nsd		: html diagram-output of Moritz




First Steps


1. Start the bat/sh-file named MxMrtz. It should a start demo-run of MuLanP and 
   Moritz. If this process ends successfully you can find an xml-output of 
   Mulanpa in the folder xm and the html-output of Moritz in the folder nsd.

3. Copy your own sources in to the folder src and delete the original example-
   sources or rename their file-attachments. Look in to the folder nsd to watch
   the results.

Command-Line Arguments

Command-Line arguments are used to give Moritz some base-informations about the
directories and file which should be used .


The following arguments has to been used without an own configuration-file:
SP[source-path] 	    source-path of the xml-files
DP[destination-path] 	destination-path of the created diagrams
RP[resource-path] 	  path with additional work-files of Moritz 


The following argument tells Moritz to use another configuration-file:
CF[configuration-file] 	file with detail-configurations default is mrtz_cfg.xml


The following arguments may be used to override the equal information in the 
used configuration-file:
SF[source-file] 	first xml-file default is index.xml
DP[destination-path] 	destination-path of the created diagrams
RP[resource-path] 	path with additional work-files of Moritz 


Here are some examples:

MuLanPa SP.\src\ DP.\xml\ RP.\res\ > MuLanPalog.txt
Moritz2 SP.\xml\ DP.\nsd\ RP.\res\ > log.txt

This win32-example starts Moritz to load xml-files from "c:\docu\xml" where the
file index.xml is loaded first and to save the diagrams at "c:\docu\nsd". The 
resource-path is the home-directory of Moritz. As base-configuration the file
 mrtz_cfg.xml is used witch is also placed in the home-directory of Moritz.

MuLanPa CFhome:/project/config/mulanpa_cfg.xml
Moritz2 CFhome:/project/config/moritz_cfg.xml

This linux-example starts Moritz with the own configuration-files 
in the directory "home:/project/config". All other informations are placed in
this configuration file.



If you have an other operation-sytem you have to download the source-files and 
compile them on your system you have change the bat-file into a shell-script of
your system also.









Using the help argument of Moritz 

Moritz offers a help-argument to provide online information 
 
 
 moritz                 -> general program-information 
 moritz help            -> shows this text 
 moritz help All        -> shows all help-information (rerout it into a file!) 
 moritz help Resources  -> general overview about the neded resource-files 
 moritz help Arguments  -> general overview about the comand-line arguments 
 moritz help SP         -> describes the source-path argument 
 moritz help DP         -> describes the destination-path argument 
 moritz help CF         -> describes the configuration-file argument 
 moritz help SF         -> describes the source-file argument 
 moritz help RP         -> describes the resource-path argument 
 moritz help CP         -> describes the additional configuration-path argument 







To build Moritz 1.9.y the following files has to be used:

src\
    diverse\ 
            cpp\
              String_imp.cpp 
            h\         
              String_imp.h 
    Moritz2\ 
           cpp\
             main.cpp
             gen_nsd.cpp
           h\
            moritz2.h
            gen_nsd.h
    MuLanPa\
           cpp\
            action.cpp
           h\
            action.h
            prs_tpdef.h
           process\
                 cpp\
                    notation.cpp
                    ntn_spirit.cpp
                    process.cpp
                    transform.cpp
                 h\
                    notation.h
                    ntn_spirit.h
                    process.h
                    transform.h


Moritz 1.9.y is a common console-application but 2 special libraries are
necessary.

1.TinyXml:http://sourceforge.net/projects/tinyxml/(currently used Version: 2.6.1)
TinyXml supports all xml-operations done by MuLanPa. It comes along as a couple 
of source- and header-files. I don't use them in a precompiled version, thus all 
nearly all c-files of TinyXml are part of the normal compilation of MuLanPa and 
the search-path to the location of its headers has to be set. But don't try to 
compile the source-file named "xmltest.cpp", because this contains an own main-
function but no library-content. For the compiler the define "TIXML_USE_STL" has 
to be set, since this is the special mode of the library used for MuLanPa.

2.Spirit: http://sourceforge.net/projects/spirit/ (currently used Version: 1.8.5)
Spirit is the real parser used by MuLanPa. Spirit is part of the huge boost-
library. But the older version 1.8.5 used here is also available as stand-alone 
version. The current version of Spirit is 2.1.0. But it seams only available as 
small part of the gigantic boost-package. Since I had to learn that some users 
don't feal comfortable to download such a amount of data (over 60Mb as zip-file) 
only for using a small peace of it, I started with the older standalone-version. 
It was a hard work to learn how to deal with it, but it works now and I ask my 
self if it will be really necessary to switch to the newer version. How ever to 
use the spirit-library, it is only necessary to set the search-path to the root-
directory  "spirit-1.8.5-miniboost" where the folder called "boost" is located.




I'm not very familiar with make-files and use an ide (DevC++, Code-Blocks, 
MinGW Developer-Studio, ...) to manage the project and the compile-process.
I don't use special compiler-options to optimize the program. For me the only
steps to compile the sources is to add them into the ide-project, add the
3 h-paths and start the compilation.






Source: ReadMe_2010_04_08.txt, updated 2010-04-08