Files @ 21afbd2a2c01
Branch filter:

Location: EI/VirtualLeaf/src/build_models/translate_plugin.pl

Michael Guravage
Renamed tutorial examples and added makefile, etc.

--
user: Michael Guravage <michael.guravage@cwi.nl>
branch 'default'
added doc/gpl3.txt
added doc/installation.pdf
added doc/installation.rst
added src/TutorialCode/Makefile
added src/TutorialCode/Tutorial0/Makefile
added src/TutorialCode/Tutorial0/tutorial0.cpp
added src/TutorialCode/Tutorial0/tutorial0.h
added src/TutorialCode/Tutorial0/tutorial0.pro
added src/TutorialCode/Tutorial1A/Makefile
added src/TutorialCode/Tutorial1A/tutorial1A.cpp
added src/TutorialCode/Tutorial1A/tutorial1A.h
added src/TutorialCode/Tutorial1A/tutorial1A.pro
added src/TutorialCode/Tutorial1B/Makefile
added src/TutorialCode/Tutorial1B/tutorial1B.cpp
added src/TutorialCode/Tutorial1B/tutorial1B.h
added src/TutorialCode/Tutorial1B/tutorial1B.pro
added src/TutorialCode/Tutorial1C/Makefile
added src/TutorialCode/Tutorial1C/tutorial1C.cpp
added src/TutorialCode/Tutorial1C/tutorial1C.h
added src/TutorialCode/Tutorial1C/tutorial1C.pro
added src/TutorialCode/Tutorial1D/Makefile
added src/TutorialCode/Tutorial1D/tutorial1D.cpp
added src/TutorialCode/Tutorial1D/tutorial1D.h
added src/TutorialCode/Tutorial1D/tutorial1D.pro
added src/TutorialCode/Tutorial2/Makefile
added src/TutorialCode/Tutorial2/tutorial2.cpp
added src/TutorialCode/Tutorial2/tutorial2.h
added src/TutorialCode/Tutorial2/tutorial2.pro
added src/TutorialCode/Tutorial3/Makefile
added src/TutorialCode/Tutorial3/tutorial3.cpp
added src/TutorialCode/Tutorial3/tutorial3.h
added src/TutorialCode/Tutorial3/tutorial3.pro
added src/TutorialCode/Tutorial4/Makefile
added src/TutorialCode/Tutorial4/tutorial4.cpp
added src/TutorialCode/Tutorial4/tutorial4.h
added src/TutorialCode/Tutorial4/tutorial4.pro
added src/TutorialCode/Tutorial5/Makefile
added src/TutorialCode/Tutorial5/tutorial5.cpp
added src/TutorialCode/Tutorial5/tutorial5.h
added src/TutorialCode/Tutorial5/tutorial5.pro
added src/perl/ChangeLog
changed src/ChangeLog
changed src/Makefile
changed src/build_models/ChangeLog
changed src/build_models/Makefile
changed src/canvas.cpp
changed src/parameter.cpp
changed src/parameter.h
changed src/pardialog.cpp
changed src/pardialog.h
changed src/perl/make_parameter_source.pl
changed src/perl/make_pardialog_source.pl
changed src/perl/make_xmlwritecode.pl
changed src/vleafmodel.h
removed doc/GPL
removed src/TutorialCode/Tutorial0/mymodel.cpp
removed src/TutorialCode/Tutorial0/mymodel.h
removed src/TutorialCode/Tutorial0/mymodel.pro
removed src/TutorialCode/Tutorial1/mymodel.cpp
removed src/TutorialCode/Tutorial1/mymodel.h
removed src/TutorialCode/Tutorial1/mymodel.pro
removed src/TutorialCode/Tutorial1A/mymodel.cpp
removed src/TutorialCode/Tutorial1A/mymodel.h
removed src/TutorialCode/Tutorial1A/mymodel.pro
removed src/TutorialCode/Tutorial1B/mymodel.cpp
removed src/TutorialCode/Tutorial1B/mymodel.h
removed src/TutorialCode/Tutorial1B/mymodel.pro
removed src/TutorialCode/Tutorial1C/mymodel.cpp
removed src/TutorialCode/Tutorial1C/mymodel.h
removed src/TutorialCode/Tutorial1C/mymodel.pro
removed src/TutorialCode/Tutorial1D/mymodel.cpp
removed src/TutorialCode/Tutorial1D/mymodel.h
removed src/TutorialCode/Tutorial1D/mymodel.pro
removed src/TutorialCode/Tutorial2/mymodel.cpp
removed src/TutorialCode/Tutorial2/mymodel.h
removed src/TutorialCode/Tutorial2/mymodel.pro
removed src/TutorialCode/Tutorial3/mymodel.cpp
removed src/TutorialCode/Tutorial3/mymodel.h
removed src/TutorialCode/Tutorial3/mymodel.pro
removed src/TutorialCode/Tutorial4/mymodel
removed src/TutorialCode/Tutorial4/mymodel.cpp
removed src/TutorialCode/Tutorial4/mymodel.h
removed src/TutorialCode/Tutorial4/mymodel.pro
removed src/TutorialCode/Tutorial5/mymodel
removed src/TutorialCode/Tutorial5/mymodel.cpp
removed src/TutorialCode/Tutorial5/mymodel.h
removed src/TutorialCode/Tutorial5/mymodel.pro
#!/usr/bin/perl

$cfilename = shift(@ARGV) || die "Usage: translate_plugin.pl [cfile] [hfile] [profile]\n";
$hfilename = shift(@ARGV) || die "Usage: translate_plugin.pl [cfile] [hfile] [profile]\n";
$pfilename = shift(@ARGV) || die "Usage: translate_plugin.pl [cfile] [hfile] [profile]\n";

$ocfname = $cfilename; $ocfname =~ s/\.cpp/_tl.cpp/g;
$ohfname = $hfilename; $ohfname =~ s/\.h/_tl.h/g;
$opfname = $pfilename; $opfname =~ s/\.pro/_tl.pro/g;

print STDERR "Translating '$cfilename' to '$ocfname', '$hfilename' to '$ohfname', and '$pfilename' to '$opfname'\n";

open cfile,"<$cfilename";
open ocfile,">$ocfname";

while (<cfile>) {
    
    #s/$hfilename/$ohfname/g;
    
    # translate function definitions
    if (/[a-zA-Z0-9 ]*::OnDivide/) {
	s/ParentInfo &parent_info/ParentInfo *parent_info/g;
	s/CellBase &daughter1/CellBase *daughter1/g;
	s/CellBase &daughter2/CellBase *daughter2/g;
    }
    
    if (/[a-zA-Z0-9 ]*::SetCellColor/) {
	s/CellBase &c/CellBase *c/g;
	s/QColor &color/QColor *color/g;
    }
    
    if (/[a-zA-Z0-9 ]*::CellHouseKeeping/) {
	s/CellBase &c/CellBase *c/g;
    }
    
    # translate member function calls
    s/\bparent_info\b\./parent_info->/g;
    s/\bdaughter1\b\./daughter1->/g;
    s/\bdaughter2\b\./daughter2->/g;
    s/\bc\b\./c->/g;
    s/\bcolor\b\./color->/g;
    print ocfile;
    
}

open hfile,"<$hfilename";
open ohfile,">$ohfname";

while (<hfile>) {
    if (/[ \t]*virtual[ \t]+void[ \t]+CellHouseKeeping/) {
	s/CellBase &c/CellBase *c/g;
    }
    if (/[ \t]*virtual[ \t]+void[ \t]+OnDivide/) {
	s/ParentInfo &parent_info/ParentInfo *parent_info/g;
	s/CellBase &daughter1/CellBase *daughter1/g;
	s/CellBase &daughter2/CellBase *daughter2/g;
    }
    if (/[ \t]*virtual[ \t]+void[ \t]+SetCellColor/) {
	s/CellBase &c/CellBase *c/g;
	s/QColor &color/QColor *color/g;
    }
    
    
    print ohfile;
    
}

open pfile,"<$pfilename";
open opfile,">$opfname";

while (<pfile>) {
    
    s/\bplugin\b\.h/plugin_tl\.h/g;
    s/\bplugin\b\.cpp/plugin_tl\.cpp/g;
    
    print opfile;
    
}

#finis