From: vsr Date: Tue, 17 Feb 2009 08:07:03 +0000 (+0000) Subject: Merge from BR_V5_DEV 17Feb09 X-Git-Tag: V5_1_1a1~1 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=2b465e94ae4ec5322dd9cff7ba1d1cc2cc6abe3f;p=plugins%2Fhexoticplugin.git Merge from BR_V5_DEV 17Feb09 --- diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 0000000..b8578ac --- /dev/null +++ b/AUTHORS @@ -0,0 +1,45 @@ +# Copyright (C) 2006-2008 OPEN CASCADE, CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# +# File : AUTHORS +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# +# --- +# +# The format of this file was inspired by the Linux kernel CREDITS file. +# +# Authors and contributors are listed alphabetically. +# +# The fields are: name (N), email (E), web-address (W), CVS account login (C), +# PGP key ID and fingerprint (P), description (D), and snail-mail address (S). +# +# --- + +N: Lioka RAZAFINDRAZAKA, CEA +E: lioka.razafindrazaka@cea.fr +D: Initial development + +N: Edward AGAPOV, Open CASCADE S.A.S +E: edward.agapov@opencascade.com +D: Debug, improve meshing algorithms + +N: Vadim SANDLER, Open CASCADE S.A.S +E: vadim.sandler@opencascade.com +D: Porting to automake, porting to SALOME series 5x diff --git a/COPYING b/COPYING new file mode 100644 index 0000000..d60c31a --- /dev/null +++ b/COPYING @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..6b675c7 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,44 @@ +# Copyright (C) 2006-2008 OPEN CASCADE, CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# +# File : ChangeLog +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# +# --- +# +# Changes are listed by modification time in the descending order, +# i.e. newer changes are listed at the top of the file. +# +# Each record lists the modification date, author and short description of +# the made changes. +# +# --- + +2008-08-29 Vadim SANDLER + + * Porting to automake, porting to SALOME series 5x + +2007-2008 Edward AGAPOV + + * Debug, improve meshing algorithms + +2006 Lioka RAZAFINDRAZAKA + + * Initial development diff --git a/HexoticPLUGIN_version.h.in b/HexoticPLUGIN_version.h.in new file mode 100644 index 0000000..b5df797 --- /dev/null +++ b/HexoticPLUGIN_version.h.in @@ -0,0 +1,34 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPLUGIN_version.h +// Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +// --- +// +#if !defined(__HEXOTICPLUGIN_VERSION_H__) +#define __HEXOTICPLUGIN_VERSION_H__ + +/* + HEXOTICPLUGIN_VERSION is (major << 16) + (minor << 8) + patch. +*/ + +#define HEXOTICPLUGIN_VERSION_STR "@VERSION@" +#define HEXOTICPLUGIN_VERSION @XVERSION@ + +#endif // __HEXOTICPLUGIN_VERSION_H__ diff --git a/INSTALL b/INSTALL index c0076b3..592ed47 100644 --- a/INSTALL +++ b/INSTALL @@ -1,5 +1,29 @@ -This is the version 3.2.0 of HexoticPLUGIN -Compatible with : - - KERNEL 3.2.0 - - GUI 3.2.0 - - SMESH 3.2.0 +# Copyright (C) 2006-2008 OPEN CASCADE, CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# +# File : INSTALL +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# +# --- + +SALOME2 : HexoticPLUGIN module (SMESH plugin) + +For installation instructions and other information, please refer to +the README file. diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..7814626 --- /dev/null +++ b/Makefile.am @@ -0,0 +1,54 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : Makefile.am +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# +include $(top_srcdir)/adm_local/unix/make_common_starter.am + +if HEXOTICPLUGIN_ENABLE_GUI + ACLOCAL_AMFLAGS = -I adm_local/unix/config_files \ + -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files \ + -I ${GUI_ROOT_DIR}/adm_local/unix/config_files \ + -I ${MED_ROOT_DIR}/adm_local/unix/config_files \ + -I ${GEOM_ROOT_DIR}/adm_local/unix/config_files \ + -I ${SMESH_ROOT_DIR}/adm_local/unix/config_files +else !HEXOTICPLUGIN_ENABLE_GUI + ACLOCAL_AMFLAGS = -I adm_local/unix/config_files \ + -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files \ + -I ${MED_ROOT_DIR}/adm_local/unix/config_files \ + -I ${GEOM_ROOT_DIR}/adm_local/unix/config_files \ + -I ${SMESH_ROOT_DIR}/adm_local/unix/config_files +endif + +SUBDIRS = idl adm_local resources src bin + +DIST_SUBDIRS = idl adm_local resources src bin + +DISTCLEANFILES = a.out aclocal.m4 configure + +salomeinclude_DATA = HexoticPLUGIN_version.h + +EXTRA_DIST += \ + build_configure \ + clean_configure + +dist-hook: + rm -rf `find $(distdir) -name CVS` diff --git a/Makefile.in b/Makefile.in deleted file mode 100644 index 7accff3..0000000 --- a/Makefile.in +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS, L3S, LJLL, MENSI -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ -# -# -* Makefile *- -# -# Author : Lioka RAZAFINDRAZAKA (CEA) -# Date : 2006/06/30 -# - -# source path -top_srcdir=@top_srcdir@ -top_builddir=. -srcdir=@srcdir@ -VPATH=.:@srcdir@:@top_srcdir@/bin:@top_srcdir@/resources:./bin:@top_srcdir@/idl - - -@COMMENCE@ - -SUBDIRS = idl src adm_local - -RESOURCES_FILES = \ - HexoticPlugin.xml \ - HexoticPLUGIN.xml \ - mesh_algo_Hexotic.png \ - mesh_hypo_Hexotic.png \ - mesh_tree_algo_Hexotic.png \ - mesh_tree_hypo_Hexotic.png \ - Hexotic.png - -BIN_SCRIPT = VERSION - -# copy header files in common directory ------------ - -ifeq ($(HAVE_SSTREAM),yes) - include_list=include/salome/SALOMEconfig.h -else - include_list=include/salome/SALOMEconfig.h include/salome/sstream -endif - -inc: idl $(include_list) - -include/salome/SALOMEconfig.h: salome_adm/unix/SALOMEconfig.ref - -$(RM) $@ - $(LN_S) ../../$< $@ - -# test if SALOMEconfig.h has changed (contents) -salome_adm/unix/SALOMEconfig.ref: salome_adm/unix/SALOMEconfig.h - @if ! [ -a $@ ]; then \ - cp -p -f $< $@; \ - fi; \ - if ! cmp $< $@; then \ - cp -p -f $< $@; \ - fi; \ - -include/salome/sstream: salome_adm/unix/sstream - -$(RM) $@ - $(LN_S) ../../$< $@ - -# install script in $(bindir) : -install-bin: $(BIN_SCRIPT) - $(INSTALL) -d $(bindir) - if test $(BIN_SCRIPT)X != X; then \ - $(INSTALL_PROGRAM) $^ $(bindir); \ - fi - -# CLEAN -------------------- - -distclean: distclean-other - -distclean-other: - -$(RM) salome_adm/unix/*~ salome_adm/unix/*% salome_adm/unix/*.bak salome_adm/unix/*.new salome_adm/unix/*.old - -$(RM) salome_adm/unix/make_* - -$(RM) salome_adm/unix/depend salome_adm/unix/SALOMEconfig.h - -$(RM) config.cache config.log config.status - -@MODULE@ - -install: install-bin diff --git a/NEWS b/NEWS new file mode 100644 index 0000000..6a0b1eb --- /dev/null +++ b/NEWS @@ -0,0 +1,29 @@ +# Copyright (C) 2006-2008 OPEN CASCADE, CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# +# File : NEWS +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# +# --- +# +# Changes are listed by modification time in the descending order, +# i.e. newer changes are listed at the top of the file. +# +# --- diff --git a/README b/README new file mode 100644 index 0000000..d6e14d7 --- /dev/null +++ b/README @@ -0,0 +1,128 @@ +SALOME platform +Hexotic meshing plugin +------------------------------ + +Contents: + +1. Pre-requisites +2. Installation +3. Launch SALOME with HexoticPLUGIN +4. HexoticPLUGIN plugin usage + +----------------- +1. Pre-requisites +----------------- + +The information in this file assumes that: + +* The SALOME platform is installed to the directory +* The Hexotic product is installed to the directory /Hexotic + +--------------- +2. Installation +--------------- + +2.1. Unpack HexoticPLUGIN module sources + +cd +tar zxf HexoticPLUGIN_SRC.tgz + +2.2. Build HexoticPLUGIN module + +* set environment + +bash +cd +source env_build.sh +export HexoticHOME=/Hexotic + +Note: you can avoid setting HexoticHOME environment variable but use +--with-hexotic key of configure script instead. You can also compile +plugin withour Hexotic product installation. But you'll need to add +path to the hexotic executable to the PATH environment variable in order +to use Hexotic meshing plugin within SALOME. + +* configure build system + +cd HexoticPLUGIN_SRC +./build_configure + +cd .. +mkdir HexoticPLUGIN_BUILD +cd HexoticPLUGIN_BUILD +../HexoticPLUGIN_SRC/configure --prefix=/HexoticPLUGIN_INSTALL + +Note: you can use --with-hexotic option to pass the root directory of +Hexotic product to the configure script. In this case you can avoid +setting HexoticHOME environment variable. Try 'configure --help' +command to learn more about available configure script options. + +Check "Summary" area in the log output of the configure script to +verify that all pre-requisites required for the successful compilation +of HexoticPLUFIN module have been found. All pre-requisite products +should have status "yes". If any product has status "no", the +compilation procedure will fail (the only exception is Hexotic +product which is not required for the successful compilation of the +plugin; it is needed in run-time only). + +* compile and install plugin module + +make +make install + +exit + +If the compilation is finished successfully (make and make install +steps are finished without errors) the HexoticPLUGIN meshing module +should be installed in the directory /HexoticPLUGIN_INSTALL. + +----------------------------------- +3. Launch SALOME with HexoticPLUGIN +----------------------------------- + +* set environment + +bash +cd +source env_products.sh + +export HexoticPLUGIN_ROOT_DIR=/HexoticPLUGIN_INSTALL +export SalomeAppConfig=${HexoticPLUGIN_ROOT_DIR}/share/salome/resources/hexoticplugin +export PATH=/Hexotic:${PATH + +* run SALOME + +runSalome + +----------------------------- +4. HexoticPLUGIN plugin usage +----------------------------- + +* Create new study + +* Activate Geometry module and create simple geometry object + +* Activate Mesh module + +* Invoke menu "Mesh/Create Mesh" + +* Select previously created geometry object by clicking it with the +mouse in the Object Browser + +* In the "Create mesh" dialog box: +- activate "3D" page +- In the "Algorithm" combo box select "Hexotic" +- Click on the button at the right of the "Hypothesis" combo box and +select "Hexotic parameters" item in the drop-down menu + +* In the "Hypothesis Construction" dialog box set parameters of Hexotic + meshing algorithm and click "OK" button + +* In the "Create mesh" dialog box Click "Apply & Close" button to + define mesh and close the dialog box + +* In the Object Browser select "Mesh_1" object, invoke context popup +menu for it by clicking right mouse button and select "Compute" item + +The resulting mesh created with Hexotic plugin will be shown in the 3D +viewer. diff --git a/adm_local/Makefile.am b/adm_local/Makefile.am new file mode 100644 index 0000000..3f9a07d --- /dev/null +++ b/adm_local/Makefile.am @@ -0,0 +1,26 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : Makefile.am +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# +include $(top_srcdir)/adm_local/unix/make_common_starter.am + +SUBDIRS = unix diff --git a/adm_local/Makefile.in b/adm_local/Makefile.in deleted file mode 100644 index b19e7c1..0000000 --- a/adm_local/Makefile.in +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS, L3S, LJLL, MENSI -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ -# -# source path -top_srcdir=@top_srcdir@ -top_builddir=.. -srcdir=@srcdir@ -VPATH=.:$(srcdir)/adm_local - - -all: resources - -install: - cp -rf @top_srcdir@/adm_local @prefix@ - -bin: - -resources : - cp -rf @top_srcdir@/adm_local $(top_builddir) - -inc: - -lib: - -depend: - -depend_idl: - -install-end: - -install-include: - -install-bin: - -uninstall: - -uninstall-idl: - -distclean: - -clean: - -distclean-other: - diff --git a/adm_local/unix/Makefile.am b/adm_local/unix/Makefile.am new file mode 100644 index 0000000..f70a09e --- /dev/null +++ b/adm_local/unix/Makefile.am @@ -0,0 +1,26 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : Makefile.am +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# +include $(top_srcdir)/adm_local/unix/make_common_starter.am + +SUBDIRS = config_files diff --git a/adm_local/unix/config_files/Makefile.am b/adm_local/unix/config_files/Makefile.am new file mode 100644 index 0000000..ca830f1 --- /dev/null +++ b/adm_local/unix/config_files/Makefile.am @@ -0,0 +1,28 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : Makefile.am +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# +include $(top_srcdir)/adm_local/unix/make_common_starter.am + +dist_admlocalm4_DATA = \ + check_Hexotic.m4 \ + check_HexoticPLUGIN.m4 diff --git a/adm_local/unix/config_files/check_Hexotic.m4 b/adm_local/unix/config_files/check_Hexotic.m4 new file mode 100755 index 0000000..42e6431 --- /dev/null +++ b/adm_local/unix/config_files/check_Hexotic.m4 @@ -0,0 +1,79 @@ +dnl Copyright (C) 2007-2008 CEA/DEN, EDF R&D +dnl +dnl This library is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Lesser General Public +dnl License as published by the Free Software Foundation; either +dnl version 2.1 of the License. +dnl +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Lesser General Public License for more details. +dnl +dnl You should have received a copy of the GNU Lesser General Public +dnl License along with this library; if not, write to the Free Software +dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +dnl +dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +dnl +dnl File : check_Hexotic.m4 +dnl Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) + +AC_DEFUN([CHECK_HEXOTIC],[ + +AC_REQUIRE([AC_PROG_CXX])dnl +AC_REQUIRE([AC_PROG_CXXCPP])dnl + +AC_CHECKING(for Hexotic commercial product) + +AC_LANG_SAVE +AC_LANG_CPLUSPLUS + +AC_ARG_WITH(, + [ --with-hexotic=DIR root directory path of Hexotic installation]) + +Hexotic_ok=no + +if test "$with_hexotic" == "no" ; then + AC_MSG_WARN(You have choosen building plugin without Hexotic) +else + if test "$with_hexotic" == "yes" || test "$with_hexotic" == "auto"; then + Hexotic_HOME="" + else + Hexotic_HOME="$with_hexotic" + fi + + if test "$Hexotic_HOME" == "" ; then + if test "x$HexoticHOME" != "x" ; then + Hexotic_HOME=$HexoticHOME + else + AC_MSG_WARN(Build plugin without Hexotic) + fi + fi + + if test "x$Hexotic_HOME" != "x"; then + + echo + echo ------------------------------------------------- + echo You are about to choose to use somehow the + echo Hexotic commercial product to generate 3D hexahedral mesh. + echo + + AC_CHECKING(for Hexotic executable) + + AC_CHECK_PROG(Hexotic,hexotic,found) + + if test "x$Hexotic" == x ; then + AC_MSG_WARN(hexotic program not found in PATH variable) + AC_MSG_WARN(Build plugin without Hexotic) + else + Hexotic_ok=yes + fi + + fi +fi + +AC_MSG_RESULT(for Hexotic: $Hexotic_ok) +AC_LANG_RESTORE + +])dnl diff --git a/adm_local/unix/config_files/check_HexoticPLUGIN.m4 b/adm_local/unix/config_files/check_HexoticPLUGIN.m4 index e2e6497..2e5c5d6 100644 --- a/adm_local/unix/config_files/check_HexoticPLUGIN.m4 +++ b/adm_local/unix/config_files/check_HexoticPLUGIN.m4 @@ -1,53 +1,64 @@ -AC_DEFUN([CHECK_HEXOTIC],[ - -AC_REQUIRE([AC_PROG_CXX])dnl -AC_REQUIRE([AC_PROG_CXXCPP])dnl - -AC_CHECKING(for Hexotic comercial product) - -AC_LANG_SAVE -AC_LANG_CPLUSPLUS - -AC_ARG_WITH(, - [ --with-Hexotic=DIR root directory path of Hexotic installation], - Hexotic_HOME=$withval,Hexotic_HOME="") - -Hexotic_ok=no - -if test "x$Hexotic_HOME" == "x" ; then - -# no --with-Hexotic option used - if test "x$HexoticHOME" != "x" ; then - - # HexoticHOME environment variable defined - Hexotic_HOME=$HexoticHOME - - fi -# -fi - -if test "x$Hexotic_HOME" != "x"; then - - echo - echo ------------------------------------------------- - echo You are about to choose to use somehow the - echo Hexotic commercial product to generate 3D hexahedral mesh. - echo - - AC_MSG_CHECKING(for Hexotic executable) - - AC_CHECK_PROG(HEXOTIC, hexotic,found) - - if test "x$HEXOTIC" == x ; then - AC_MSG_RESULT(no) - AC_MSG_WARN(Hexotic program not found in PATH variable) - else - Hexotic_ok=yes - fi - +dnl Copyright (C) 2007-2008 CEA/DEN, EDF R&D +dnl +dnl This library is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Lesser General Public +dnl License as published by the Free Software Foundation; either +dnl version 2.1 of the License. +dnl +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Lesser General Public License for more details. +dnl +dnl You should have received a copy of the GNU Lesser General Public +dnl License along with this library; if not, write to the Free Software +dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +dnl +dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +dnl +dnl File : check_HexoticPLUGIN.m4 +dnl Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) + +AC_DEFUN([CHECK_HEXOTICPLUGIN],[ + +AC_CHECKING(for Hexotic mesh plugin) + +Hexoticplugin_ok=no + +HexoticPLUGIN_LDFLAGS="" +HexoticPLUGIN_CXXFLAGS="" + +AC_ARG_WITH(Hexoticplugin, + [ --with-Hexoticplugin=DIR root directory path of Hexotic mesh plugin installation ]) + +if test "$with_Hexoticplugin" != "no" ; then + if test "$with_Hexoticplugin" == "yes" || test "$with_Hexoticplugin" == "auto"; then + if test "x$HexoticPLUGIN_ROOT_DIR" != "x" ; then + HexoticPLUGIN_DIR=$HexoticPLUGIN_ROOT_DIR + fi + else + HexoticPLUGIN_DIR="$with_Hexoticplugin" + fi + + if test "x$HexoticPLUGIN_DIR" != "x" ; then + if test -f ${HexoticPLUGIN_DIR}/lib${LIB_LOCATION_SUFFIX}/salome/libHexoticEngine.so ; then + Hexoticplugin_ok=yes + AC_MSG_RESULT(Using Hexotic mesh plugin distribution in ${HexoticPLUGIN_DIR}) + HexoticPLUGIN_ROOT_DIR=${HexoticPLUGIN_DIR} + HexoticPLUGIN_LDFLAGS=-L${HexoticPLUGIN_DIR}/lib${LIB_LOCATION_SUFFIX}/salome + HexoticPLUGIN_CXXFLAGS=-I${HexoticPLUGIN_DIR}/include/salome + else + AC_MSG_WARN("Cannot find compiled Hexotic mesh plugin distribution") + fi + else + AC_MSG_WARN("Cannot find compiled Hexotic mesh plugin distribution") + fi fi -AC_MSG_RESULT(for Hexotic: $Hexotic_ok) -AC_LANG_RESTORE +AC_MSG_RESULT(for Hexotic mesh plugin: $Hexoticplugin_ok) +AC_SUBST(HexoticPLUGIN_ROOT_DIR) +AC_SUBST(HexoticPLUGIN_LDFLAGS) +AC_SUBST(HexoticPLUGIN_CXXFLAGS) + ])dnl diff --git a/adm_local/unix/make_commence.in b/adm_local/unix/make_commence.in deleted file mode 100644 index e400843..0000000 --- a/adm_local/unix/make_commence.in +++ /dev/null @@ -1,284 +0,0 @@ -# common directories to put headerfiles -inc_builddir=$(top_builddir)/include/salome - -@SET_MAKE@ -SHELL=/bin/sh - -# header missing - -HAVE_SSTREAM=@HAVE_SSTREAM@ - - -LIBS=@LIBS@ -LDFLAGS=@LDFLAGS@ -L$(top_builddir)/lib@LIB_LOCATION_SUFFIX@/salome -Xlinker -rpath-link -Xlinker $(top_builddir)/lib@LIB_LOCATION_SUFFIX@/salome -# add libstdc++ to link c++ library with libtool ! -LDFLAGS+= -lstdc++ - -CP=@CP@ - -# CPP - -CPP=@CPP@ -CXXCPP=@CXXCPP@ -CPPFLAGS=@CPPFLAGS@ -I$(inc_builddir) -I$(srcdir) -I. - -# C - -CC = @CC@ -CFLAGS = @CFLAGS@ -C_DEPEND_FLAG = @C_DEPEND_FLAG@ - -# C++ - -CXX = @CXX@ -CXXFLAGS = @CXXFLAGS@ -CXX_DEPEND_FLAG = @CXX_DEPEND_FLAG@ - -# BOOST Library - -BOOST_CPPFLAGS = @BOOST_CPPFLAGS@ - -# JAVA - -JAVA_INCLUDES = @JAVA_INCLUDES@ -JAVA_LIBS = @JAVA_LIBS@ -JAVA_LDPATH = @JAVA_LDPATH@ - -# PYTHON - -PYTHON = @PYTHON@ -PYTHONHOME = @PYTHONHOME@ -PYTHON_INCLUDES = @PYTHON_INCLUDES@ -PYTHON_LIBS = @PYTHON_LIBS@ -PYTHON_VERSION = @PYTHON_VERSION@ -PYTHON_SITE = @PYTHON_SITE@ -PYTHON_SITE_INSTALL = @PYTHON_SITE_INSTALL@ - -# QT - -QT_ROOT = @QT_ROOT@ -QT_INCLUDES = @QT_INCLUDES@ -QT_MT_INCLUDES = @QT_INCLUDES@ -DQT_THREAD_SUPPORT -QT_LIBS = @QT_LIBS@ -QT_MT_LIBS = @QT_MT_LIBS@ - -MOC = @MOC@ -UIC = @UIC@ -MSG2QM = @MSG2QM@ - -#QWT - -QWT_INCLUDES=@QWT_INCLUDES@ -QWT_LIBS=@QWT_LIBS@ - -# SIP -SIP = @SIP@ -SIP_INCLUDES = @SIP_INCLUDES@ -SIP_LIBS = @SIP_LIBS@ - -# PYQT -PYQT_SIPS = @PYQT_SIPS@ -PYQT_LIBS = @PYQT_LIBS@ - -# openGL -OGL_INCLUDES=@OGL_INCLUDES@ -OGL_LIBS=@OGL_LIBS@ - -# VTK -VTK_INCLUDES=@VTK_INCLUDES@ -VTK_LIBS=@VTK_LIBS@ - -# HDF5 - -HDF5_INCLUDES=@HDF5_INCLUDES@ -HDF5_LIBS=@HDF5_LIBS@ -HDF5_MT_LIBS=@HDF5_MT_LIBS@ - -# OpenCasCade - -OCC_INCLUDES=@CAS_CPPFLAGS@ -OCC_CXXFLAGS=@CAS_CXXFLAGS@ - -OCC_KERNEL_LIBS=@CAS_KERNEL@ -OCC_OCAF_LIBS=@CAS_OCAF@ -OCC_VIEWER_LIBS=@CAS_VIEWER@ -OCC_MODELER_LIBS=@CAS_MODELER@ -OCC_DATAEXCHANGE_LIBS=@CAS_DATAEXCHANGE@ -OCC_LIBS=@CAS_LDFLAGS@ -OCC_LDPATH=@CAS_LDPATH@ - -# MPICH - -MPICH_INCLUDES=@MPICH_INCLUDES@ -MPICH_LIBS=@MPICH_LIBS@ - -# Swig C++ Python - -SWIG = @SWIG@ -SWIG_FLAGS = @SWIG_FLAGS@ -I$(inc_builddir) -I$(srcdir) -I. - -# OMNIORB - -OMNIORB_ROOT = @OMNIORB_ROOT@ -OMNIORB_INCLUDES = @OMNIORB_INCLUDES@ -OMNIORB_LIBS = @OMNIORB_LIBS@ -OMNIORB_CXXFLAGS = @OMNIORB_CXXFLAGS@ - -OMNIORB_IDL = @OMNIORB_IDL@ -OMNIORB_IDLCXXFLAGS = @OMNIORB_IDLCXXFLAGS@ -OMNIORB_IDLPYFLAGS = @OMNIORB_IDLPYFLAGS@ -I$(srcdir) -I$(KERNEL_ROOT_DIR)/idl/salome \ - -I$(GEOM_ROOT_DIR)/idl/salome -I$(MED_ROOT_DIR)/idl/salome\ - -I$(SMESH_ROOT_DIR)/idl/salome - -OMNIORB_IDL_CLN_H = @OMNIORB_IDL_CLN_H@ -OMNIORB_IDL_CLN_CXX = @OMNIORB_IDL_CLN_CXX@ -OMNIORB_IDL_CLN_OBJ = @OMNIORB_IDL_CLN_OBJ@ - -OMNIORB_IDL_SRV_H = @OMNIORB_IDL_SRV_H@ -OMNIORB_IDL_SRV_CXX = @OMNIORB_IDL_SRV_CXX@ -OMNIORB_IDL_SRV_OBJ = @OMNIORB_IDL_SRV_OBJ@ - -# Default ORB - -CORBA_ROOT = @CORBA_ROOT@ -CORBA_INCLUDES = @CORBA_INCLUDES@ -CORBA_LIBS = @CORBA_LIBS@ -CORBA_CXXFLAGS = @CORBA_CXXFLAGS@ - -IDLCXXFLAGS = -bcxx @IDLCXXFLAGS@ -I$(srcdir) -I$(KERNEL_ROOT_DIR)/idl/salome \ - -I$(GEOM_ROOT_DIR)/idl/salome -I$(MED_ROOT_DIR)/idl/salome\ - -I$(SMESH_ROOT_DIR)/idl/salome -IDLPYFLAGS = @IDLPYFLAGS@ - -IDL = @IDL@ - -IDL_CLN_H = @IDL_CLN_H@ -IDL_CLN_CXX = @IDL_CLN_CXX@ -IDL_CLN_OBJ = @IDL_CLN_OBJ@ - -IDL_SRV_H = @IDL_SRV_H@ -IDL_SRV_CXX = @IDL_SRV_CXX@ -IDL_SRV_OBJ = @IDL_SRV_OBJ@ - -CPPFLAGS+= $(CORBA_INCLUDES) -CXXFLAGS+= $(CORBA_CXXFLAGS) - -# SALOME - -SALOME_INCLUDES = \ - -I$(KERNEL_ROOT_DIR)/include/salome \ - -I$(GEOM_ROOT_DIR)/include/salome \ - -I$(SMESH_ROOT_DIR)/include/salome - -CPPFLAGS += -DSOLIDGEOM -DLINUX $(OCC_INCLUDES) $(SALOME_INCLUDES) $(BOOST_CPPFLAGS) -CXXFLAGS += -DSOLIDGEOM -DLINUX $(OCC_CXXFLAGS) $(SALOME_INCLUDES) - -LDFLAGS += -L${KERNEL_ROOT_DIR}/lib@LIB_LOCATION_SUFFIX@/salome -L${SMESH_ROOT_DIR}/lib@LIB_LOCATION_SUFFIX@/salome -L${GEOM_ROOT_DIR}/lib@LIB_LOCATION_SUFFIX@/salome -lSMESHimpl -lSMESHEngine -lStdMeshers -lStdMeshersEngine -lSalomeGenericObj - -# add corba libs when link salome application ! -#LDFLAGS+= $(CORBA_LIBS) -LIBS+=$(CORBA_LIBS) - -## Shared libraries -LT_STATIC_EXEC=@LT_STATIC_EXEC@ -DYNAMIC_DIRS=@DYNAMIC_DIRS@ -LT_LIB=libtool -LT=$(top_builddir)/libtool -LT_COMPILE=$(LT) --mode=compile $(CC) -LT_LINK_LIB=$(LT_LIB) --mode=link $(CC) -rpath $(libdir) -LT_LINK_EXE=$(LT) --mode=link $(CC) $(LT_STATIC_EXEC) -dlopen self -rpath $(bindir) $(DYNAMIC_DIRS) -LT_RUN=$(LT) --mode=execute -LT_INSTALL_PROG=$(LT) --mode=install $(INSTALL_PROGRAM) -LT_INSTALL_LIB=$(LT) --mode=install $(INSTALL_DATA) -LT_UNINSTALL=$(LT) --mode=uninstall $(RM) - -INSTALL=@INSTALL@ -INSTALL_PROGRAM=@INSTALL_PROGRAM@ -INSTALL_DATA=@INSTALL_DATA@ - -# create a symbolic link (or a copie ?) -LN_S=@LN_S@ - -## Installation points -prefix=@prefix@ -exec_prefix=@exec_prefix@ -bindir=@bindir@/salome -libdir=@exec_prefix@/lib@LIB_LOCATION_SUFFIX@/salome -# warning : if user give this path in configure we could have salome/salome :-( -includedir=@includedir@/salome -datadir=@datadir@/salome -idldir=$(prefix)/idl/salome -sharedpydir=@exec_prefix@/lib@LIB_LOCATION_SUFFIX@/python$(PYTHON_VERSION)/site-packages/salome/shared_modules - -docdir=${prefix}/doc/salome - -# -# begin of package rules -# - -.PHONY: all lib bin inc resources docs tests install uninstall dep depend depend_idl cleandep mostlyclean clean distclean - -.SUFFIXES: .cxx .cc .c .f .o .lo .idl .py .i .ui .po .qm - -all: - $(MAKE) inc - $(MAKE) depend_idl - $(MAKE) depend - $(MAKE) lib - $(MAKE) bin - $(MAKE) resources - -# -# add target to build administrative files -# - -Makefile: $(top_builddir)/config.status $(srcdir)/Makefile.in - cd $(top_builddir) ; ./config.status - -LOCAL_MAKE = make_commence make_omniorb - -KERNEL_MAKE = make_module make_conclude depend SALOMEconfig.h F77config.h sstream envScript - -$(top_builddir)/config.status: $(top_srcdir)/configure \ - $(LOCAL_MAKE:%=$(top_srcdir)/adm_local/unix/%.in) \ - $(KERNEL_MAKE:%=$(KERNEL_ROOT_DIR)/salome_adm/unix/%.in) - cd $(top_builddir) ; ./config.status --recheck - -# VPATH contain $(srcdir), so make configure is good in top_srcdir and we must add target configure otherwise :-) -ifneq ($(top_srcdir),$(srcdir)) -configure: $(top_srcdir)/configure -endif - -$(top_srcdir)/configure: $(top_srcdir)/configure.in $(top_srcdir)/aclocal.m4 - cd $(top_srcdir) ; autoconf - -$(top_srcdir)/configure.in: $(top_srcdir)/configure.in.base - cd $(top_srcdir) && ./build_configure - - -ACLOCAL_KERNEL = \ -ac_cxx_bool.m4 check_corba.m4 \ -ac_cxx_depend_flag.m4 check_hdf5.m4 enable_pthreads.m4 \ -ac_cxx_mutable.m4 check_mico.m4 libtool.m4 \ -ac_cxx_namespaces.m4 check_omniorb.m4 pyembed.m4 \ -ac_cxx_partial_specialization.m4 python.m4 \ -ac_cxx_typename.m4 check_pthreads.m4 check_cas.m4 \ -ac_cc_warnings.m4 check_swig.m4 check_boost.m4 - -ACLOCAL_GUI = \ -check_vtk.m4 check_opengl.m4 check_qt.m4 \ -check_GUI.m4 check_corba_in_GUI.m4 - -ACLOCAL_GEOM = check_GEOM.m4 - -ACLOCAL_SMESH = check_SMESH.m4 - -$(top_srcdir)/aclocal.m4: $(ACLOCAL_KERNEL%=@KERNEL_ROOT_DIR@/salome_adm/unix/config_files/%) \ - $(ACLOCAL_GUI:%=@GUI_ROOT_DIR@/adm_local/unix/config_files/%) \ - $(ACLOCAL_GEOM:%=@GEOM_ROOT_DIR@/adm_local/unix/config_files/%) \ - $(ACLOCAL_SMESH:%=@SMESH_ROOT_DIR@/adm_local/unix/config_files/%) - cd $(top_srcdir) ; aclocal -I adm_local/unix/config_files -I @KERNEL_ROOT_DIR@/salome_adm/unix/config_files \ - -I @GUI_ROOT_DIR@/adm_local/unix/config_files \ - -I @GEOM_ROOT_DIR@/adm_local/unix/config_files \ - -I @SMESH_ROOT_DIR@/adm_local/unix/config_files - diff --git a/adm_local/unix/make_common_starter.am b/adm_local/unix/make_common_starter.am new file mode 100644 index 0000000..56185e3 --- /dev/null +++ b/adm_local/unix/make_common_starter.am @@ -0,0 +1,89 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : make_common_starter.am +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# ============================================================ +# This file defines the common definitions used in several +# Makefile. This file must be included, if needed, by the file +# Makefile.am. +# ============================================================ +# Standard directory for installation +# +salomeincludedir = $(includedir)/salome +libdir = $(prefix)/lib@LIB_LOCATION_SUFFIX@/salome +bindir = $(prefix)/bin/salome +salomescriptdir = $(bindir) +salomepythondir = $(pythondir)/salome +salomepyexecdir = $(pyexecdir)/salome + +# Directory for installing idl files +salomeidldir = $(prefix)/idl/salome + +# Directory for installing resource files +salomeresdir = $(prefix)/share/salome/resources/@MODULE_NAME@ + +# Directories for installing admin files +admlocaldir = $(prefix)/adm_local +admlocalunixdir = $(admlocaldir)/unix +admlocalm4dir = $(admlocaldir)/unix/config_files + +# Shared modules installation directory +sharedpkgpythondir = $(salomepythondir)/shared_modules + +# Documentation directory +docdir = $(datadir)/doc/salome + +# common rules + +# meta object implementation files generation (moc) +%_moc.cxx: %.h + $(MOC) $< -o $@ + +# translation (*.qm) files generation (lrelease) +%.qm: %.ts + $(LRELEASE) $< -qm $@ + +# resource files generation (qrcc) +qrc_%.cxx: %.qrc + $(QRCC) $< -o $@ -name $(*F) + +# qt forms files generation (uic) +ui_%.h: %.ui + $(UIC) -o $@ $< + +# extra distributed files +EXTRA_DIST = $(MOC_FILES:%_moc.cxx=%.h) $(QRC_FILES:qrc_%.cxx=%.qrc) \ + $(UIC_FILES:ui_%.h=%.ui) $(nodist_salomeres_DATA:%.qm=%.ts) + +# customize clean operation +mostlyclean-local: + rm -f @builddir@/*_moc.cxx + rm -f @builddir@/*.qm + rm -f @builddir@/ui_*.h + rm -f @builddir@/qrc_*.cxx + +# tests +tests: unittest + +unittest: $(UNIT_TEST_PROG) + @if test "x$(UNIT_TEST_PROG)" != "x"; then \ + $(UNIT_TEST_PROG); \ + fi; diff --git a/adm_local/unix/make_omniorb.in b/adm_local/unix/make_omniorb.in deleted file mode 100644 index 217e040..0000000 --- a/adm_local/unix/make_omniorb.in +++ /dev/null @@ -1,61 +0,0 @@ -#======================================================================= -# Begin specific part to omniorb -# (include from file adm/unix/make_omniorb generated by -# adm/unix/make_omniorb.in) -#======================================================================= -# -* Makefile *- -# -# Author : Patrick GOLDBRONN (CEA) -# Date : 29/06/2001 -# - -# Client and server object are the same with omniorb -# There are one header file and one source file generate - -#IDLOBJ=$(IDLSRC:%.idl=%$(IDL_CLN_OBJ)) - -# dependancies between idl and it's generated files -%$(OMNIORB_IDL_CLN_CXX) %$(OMNIORB_IDL_CLN_H): ${KERNEL_ROOT_DIR}/idl/salome/%.idl - $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $< - -%$(OMNIORB_IDL_CLN_CXX) %$(OMNIORB_IDL_CLN_H): ${GEOM_ROOT_DIR}/idl/salome/%.idl - $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $< - -#%$(OMNIORB_IDL_CLN_CXX) %$(OMNIORB_IDL_CLN_H): ${MED_ROOT_DIR}/idl/salome/%.idl -# $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $< - -%$(OMNIORB_IDL_CLN_CXX) %$(OMNIORB_IDL_CLN_H): ${SMESH_ROOT_DIR}/idl/salome/%.idl - $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $< - -%$(OMNIORB_IDL_CLN_CXX) %$(OMNIORB_IDL_CLN_H): ${top_builddir}/idl/salome/%.idl - $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $< - -# dependncies between idl files -depend_idl: .depidl - -# we use cpp to generate dependencies between idl files. -# we change cpp output to keep only idl file and transform it to get a suitable rule -.depidl: $(IDL_FILES) - @touch $@ - @for dep in $? dummy; do \ - if [ $$dep != "dummy" ]; then \ - echo Building dependencies for $$dep; \ - basedep=`basename $$dep .idl`; \ - header="$$basedep"$(IDL_CLN_H); \ - sed '\%^'"$$header"':%,\%[^\\]$$%d' <$@ >$@- && mv $@- $@; \ - $(CPP) $(C_DEPEND_FLAG) -I$(srcdir) $$dep 2>/dev/null | \ - sed `echo "s%$$basedep\\.idl%$$header:%g"` | \ - sed 's% $(srcdir)/% %g' | \ - sed 's% $(top_srcdir)/% %g' | \ - sed 's% $(top_builddir)/% %g' | \ - sed 's%^.*:\.o: *%%' | sed 's%^ *\\ *%%'| sed 's%^ *\(.*\):%\1:%' | \ - sed 's/\.idl/$(IDL_CLN_H)/' >>$@; \ - echo '' >>$@; \ - fi; \ - done ; - --include .depidl - -#======================================================================= -# End specific part to omniorb -#======================================================================= diff --git a/bin/Makefile.am b/bin/Makefile.am new file mode 100644 index 0000000..4af7144 --- /dev/null +++ b/bin/Makefile.am @@ -0,0 +1,30 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : Makefile.am +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# +include $(top_srcdir)/adm_local/unix/make_common_starter.am + +# non-distributed files +nodist_salomescript_DATA = VERSION + +# distributed files +dist_salomescript_SCRIPTS = diff --git a/build_configure b/build_configure index d3790d2..2593129 100755 --- a/build_configure +++ b/build_configure @@ -1,15 +1,30 @@ #!/bin/bash - +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D # -# Tool for updating list of .in file for the SALOME project -# and regenerating configure script +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # -# Author : Marc Tajchman - CEA -# Date : 10/10/2002 +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : build_configure +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- # - ORIG_DIR=`pwd` CONF_DIR=`echo $0 | sed -e "s,[^/]*$,,;s,/$,,;s,^$,.,"` +HEXOTICPLUGIN_WITH_GUI="yes" ######################################################################## # Test if the KERNEL_ROOT_DIR is set correctly @@ -25,12 +40,27 @@ fi # echo "failed : KERNEL_SRC variable is not correct !" # exit #fi + +for option +do + case $option in + -with-gui | --with-gui) + HEXOTICPLUGIN_WITH_GUI="yes" + break;; + -without-gui | --without-gui | -with-gui=no | --with-gui=no) + HEXOTICPLUGIN_WITH_GUI="no" + break;; + esac +done + ######################################################################## # Test if the GUI_ROOT_DIR is set correctly -if test ! -d "${GUI_ROOT_DIR}"; then - echo "failed : GUI_ROOT_DIR variable is not correct !" - exit +if test ${HEXOTICPLUGIN_WITH_GUI} = yes; then + if test ! -d "${GUI_ROOT_DIR}"; then + echo "failed : GUI_ROOT_DIR variable is not correct !" + exit + fi fi ######################################################################## @@ -57,206 +87,93 @@ if test ! -d "${SMESH_ROOT_DIR}"; then exit fi -######################################################################## -# find_in - utility function -# -# usage : -# find_in directory filename -# -# Finds files following the *.in pattern, recursively in the -# directory (first argument). -# Results are appended into the file (second argument) -# -# Difference from the standard unix find is that files are tested -# before directories -# - -find_in() -{ - local i - local f=$2 - -# if the first argument is not a directory, returns - - if [ ! -d "$1" ] ; then - return - fi - -# dont look in the CVS directories - - case $1 in - */CVS) return ;; - */adm_local/*) return ;; - *) ;; - esac - -# for each regular file contained in the directory -# test if it's a .in file - - for i in "$1"/* - do - if [ -f "$i" ] ; then - case $i in - *.in) echo " "$i" \\" >> $f;; - *) ;; - esac - fi - done - -# for each subdirectory of the first argument, proceeds recursively - - for i in "$1"/* - do - if [ -d "$i" ] ; then - find_in "$i" "$f" - fi - done -} - - -####################################################################### -# Generate list of .in files (Makefile.in, config.h.in, etc) -# appending it in file configure.in - cd ${CONF_DIR} ABS_CONF_DIR=`pwd` -echo -echo "CONF_DIR : $CONF_DIR" -echo "ABS_CONF_DIR : $ABS_CONF_DIR" -echo "KERNEL_ROOT_DIR : $KERNEL_ROOT_DIR" -echo "ROOT_SRCDIR : $ROOT_SRCDIR" -echo - -# -# Common part of the configure.in file -# -chmod u+w configure.in.base -if ! \cp -f configure.in.base configure.in_tmp1 -then - echo - echo "error : can't create files in" ${CONF_DIR} - echo "aborting ..." - chmod u-w configure.in.base - exit -fi -chmod u-w configure.in.base - -if [ -e "${CONF_DIR}/salome_adm" ] ; then - echo "salome_adm file exists in the current directory" - \rm -f ${CONF_DIR}/salome_adm -fi - -# make a link allowing AC_OUTPUT to find the salome_adm/.../*.in files -echo "" >> configure.in_tmp1 -echo 'ln -fs ${KERNEL_ROOT_DIR}/salome_adm ${ROOT_SRCDIR}/.' >> configure.in_tmp1 - -echo "" >> configure.in_tmp1 -echo "AC_OUTPUT([ \\" >> configure.in_tmp1 - -# -# List of .in files in the adm/unix directory -# These files MUST be on top of AC_OUTPUT list so we -# put them "manually" -# - -echo " ./salome_adm/unix/SALOMEconfig.h \\" >> configure.in_tmp1 -echo " ./salome_adm/unix/F77config.h \\" >> configure.in_tmp1 -echo " ./salome_adm/unix/sstream \\" >> configure.in_tmp1 -echo " ./salome_adm/unix/depend \\" >> configure.in_tmp1 -echo " ./adm_local/unix/make_omniorb:${ABS_CONF_DIR}/adm_local/unix/make_omniorb.in \\" >> configure.in_tmp1 -echo " ./salome_adm/unix/envScript \\" >> configure.in_tmp1 -echo " ./adm_local/unix/make_commence:${ABS_CONF_DIR}/adm_local/unix/make_commence.in \\" >> configure.in_tmp1 -echo " ./salome_adm/unix/make_conclude \\" >> configure.in_tmp1 -echo " ./salome_adm/unix/make_module \\" >> configure.in_tmp1 - -\rm -f configure.in_tmp2 configure.in_tmp3 -touch configure.in_tmp2 -find_in . configure.in_tmp2 - -sed -e '/^...salome_adm/d' configure.in_tmp2 > configure.in_tmp3 -sed -e '/^...adm_local.unix.make_omniorb/d' configure.in_tmp3 configure.in_tmp2 -sed -e '/^...adm_local.unix.make_commence/d' configure.in_tmp2 > configure.in_tmp3 -sed -e '/configure.in/d' configure.in_tmp3 > configure.in_tmp2 -sed -e 's/.in / /' configure.in_tmp2 >> configure.in_tmp1 -#sed '/^.salome_adm/d' configure.in_tmp2 > configure.in_tmp3 -#sed '/configure.in/d' configure.in_tmp3 > configure.in_tmp2 -#sed 's/.in / /' configure.in_tmp2 >> configure.in_tmp1 - -echo "])" >> configure.in_tmp1 - -# delete the link created for AC_OUTPUT -echo "" >> configure.in_tmp1 -#echo 'rm -f ${ROOT_SRCDIR}/salome_adm' >> configure.in_tmp1 - -\mv configure.in_tmp1 configure.in_new -\rm -f configure.in_tmp2 configure.in_tmp3 - -######################################################################## -# Create new (or replace old) configure.in file -# Print a message if the file is write protected -# - -echo -if test ! -f configure.in -then - echo -n "Creating new file 'configure.in' ... " - if \mv configure.in_new configure.in >& /dev/null - then - echo "done" - else - echo "error, check your file permissions" - fi -else - echo -n "Updating 'configure.in' file ... " - if ! \cp configure.in configure.in_old >& /dev/null - then - echo - echo - echo "Can't backup previous configure.in" - echo -n "Continue (you will not be able to revert) - (Y/N) ? " - read R - case "x$R" in - xn*) exit;; - xN*) exit;; - esac - echo - echo -n " " - fi - if \cp configure.in_new configure.in >& /dev/null - then - echo "done" - else - echo - echo "error, can't update previous configure.in" - fi -fi - -######################################################################## -# Use autoconf to rebuild the configure script -# - -if test -f configure -then - echo -n "Updating 'configure' script ... " -else - echo -n "Creating 'configure' script ... " -fi - -aclocal -I adm_local/unix/config_files -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files \ - -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files/DEPRECATED \ - -I ${GUI_ROOT_DIR}/adm_local/unix/config_files \ - -I ${MED_ROOT_DIR}/adm_local/unix/config_files \ - -I ${GEOM_ROOT_DIR}/adm_local/unix/config_files \ - -I ${SMESH_ROOT_DIR}/adm_local/unix/config_files - -if autoconf -then - echo "done" +####################################################################### +# Update configure.ac script: to set HEXOTICPLUGIN_WITH_GUI variable +sed -e s/HEXOTICPLUGIN_WITH_GUI=[a-z]*/HEXOTICPLUGIN_WITH_GUI=${HEXOTICPLUGIN_WITH_GUI}/g configure.ac > configure.tmp +mv -f configure.tmp configure.ac + +mkdir -p salome_adm/unix/config_files +#cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files/* salome_adm/unix/config_files +#cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/pythonbe.py salome_adm/unix + +cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/SALOMEconfig.h.in salome_adm/unix + +#cp -f ${GUI_ROOT_DIR}/adm_local/unix/config_files/* salome_adm/unix/config_files +#cp -f ${MED_ROOT_DIR}/adm_local/unix/config_files/* salome_adm/unix/config_files +#cp -f ${GEOM_ROOT_DIR}/adm_local/unix/config_files/* salome_adm/unix/config_files +#cp -f ${SMESH_ROOT_DIR}/adm_local/unix/config_files/* salome_adm/unix/config_files + +# remove KERNEL deprecated configure files +#for deprecated in ac_cc_warnings.m4 ac_cxx_partial_specialization.m4 \ +# check_mico.m4 config.guess ltmain.sh ac_cxx_bool.m4 ltconfig ac_cxx_typename.m4 \ +# check_pthreads.m4 config.sub libtool.m4 ac_cxx_mutable.m4 missing +# do +# rm -f salome_adm/unix/config_files/${deprecated} +# done + + +# ____________________________________________________________________ +# aclocal creates the aclocal.m4 file from the standard macro and the +# custom macro embedded in the directory salome_adm/unix/config_files +# and KERNEL config_files directory. +# output: +# aclocal.m4 +# autom4te.cache (directory) +echo "====================================================== aclocal" + +if test ${HEXOTICPLUGIN_WITH_GUI} = yes; then + aclocal -I adm_local/unix/config_files \ + -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files \ + -I ${GUI_ROOT_DIR}/adm_local/unix/config_files \ + -I ${MED_ROOT_DIR}/adm_local/unix/config_files \ + -I ${GEOM_ROOT_DIR}/adm_local/unix/config_files \ + -I ${SMESH_ROOT_DIR}/adm_local/unix/config_files || exit 1 else - echo "failed (check file permissions and/or user quotas ...)" + aclocal -I adm_local/unix/config_files \ + -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files \ + -I ${MED_ROOT_DIR}/adm_local/unix/config_files \ + -I ${GEOM_ROOT_DIR}/adm_local/unix/config_files \ + -I ${SMESH_ROOT_DIR}/adm_local/unix/config_files || exit 1 fi -cd ${ORIG_DIR} - -echo +# ____________________________________________________________________ +# libtoolize creates some configuration files (ltmain.sh, +# config.guess and config.sub). It only depends on the libtool +# version. The files are created in the directory specified with the +# AC_CONFIG_AUX_DIR() tag (see configure.ac). +# output: +# salome_adm/unix/config_files/config.guess +# salome_adm/unix/config_files/config.sub +# salome_adm/unix/config_files/ltmain.sh +#echo "====================================================== libtoolize" + +libtoolize --force --copy --automake || exit 1 + +# ____________________________________________________________________ +# autoconf creates the configure script from the file configure.ac (or +# configure.in if configure.ac doesn't exist) +# output: +# configure +echo "====================================================== autoconf" + +autoconf + +# ____________________________________________________________________ +# automake creates some scripts used in building process +# (install-sh, missing, ...). It only depends on the automake +# version. The files are created in the directory specified with the +# AC_CONFIG_AUX_DIR() tag (see configure.ac). This step also +# creates the Makefile.in files from the Makefile.am files. +# output: +# salome_adm/unix/config_files/compile +# salome_adm/unix/config_files/depcomp +# salome_adm/unix/config_files/install-sh +# salome_adm/unix/config_files/missing +# salome_adm/unix/config_files/py-compile +# Makefile.in (from Makefile.am) +echo "====================================================== automake" + +automake --copy --gnu --add-missing diff --git a/clean_configure b/clean_configure new file mode 100755 index 0000000..8f00366 --- /dev/null +++ b/clean_configure @@ -0,0 +1,37 @@ +#!/bin/bash +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : clean_configure +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# +rm -rf autom4te.cache aclocal.m4 configure make_config +find . -name "*~" -print -exec rm {} \; +find . -name "*.pyc" -print -exec rm {} \; + +# ... + +find bin -name Makefile.in | xargs rm -f +find doc -name Makefile.in | xargs rm -f +find idl -name Makefile.in | xargs rm -f +find resources -name Makefile.in | xargs rm -f +find salome_adm -name Makefile.in | xargs rm -f +find src -name Makefile.in | xargs rm -f +rm -f Makefile.in diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..9ae08a2 --- /dev/null +++ b/configure.ac @@ -0,0 +1,428 @@ +#!/bin/bash +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : configure.ac +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# +AC_INIT([Salome2 Project HexoticPLUGIN module], [5.1.0], [webmaster.salome@opencascade.com], [SalomeHexoticPLUGIN]) +AC_CONFIG_AUX_DIR(salome_adm/unix/config_files) +AC_CANONICAL_HOST +AC_CANONICAL_TARGET +AM_INIT_AUTOMAKE + +XVERSION=`echo $VERSION | awk -F. '{printf("0x%02x%02x%02x",$1,$2,$3)}'` +AC_SUBST(XVERSION) + +# set up MODULE_NAME variable for dynamic construction of directories (resources, etc.) +MODULE_NAME=hexoticplugin +AC_SUBST(MODULE_NAME) + +dnl +dnl Initialize source and build root directories +dnl + +ROOT_BUILDDIR=`pwd` +ROOT_SRCDIR=`echo $0 | sed -e "s,[[^/]]*$,,;s,/$,,;s,^$,.,"` +cd $ROOT_SRCDIR +ROOT_SRCDIR=`pwd` +cd $ROOT_BUILDDIR + +AC_SUBST(ROOT_SRCDIR) +AC_SUBST(ROOT_BUILDDIR) + +echo +echo Source root directory : $ROOT_SRCDIR +echo Build root directory : $ROOT_BUILDDIR +echo +echo + +if test -z "$AR"; then + AC_CHECK_PROGS(AR,ar xar,:,$PATH) +fi +AC_SUBST(AR) + +dnl Export the AR macro so that it will be placed in the libtool file +dnl correctly. +export AR + +echo +echo --------------------------------------------- +echo testing make +echo --------------------------------------------- +echo + +AC_PROG_MAKE_SET +AC_PROG_INSTALL +dnl +dnl libtool macro check for CC, LD, NM, LN_S, RANLIB, STRIP + pour les librairies dynamiques ! + +AC_ENABLE_DEBUG(yes) +AC_DISABLE_PRODUCTION + +echo --------------------------------------------- +echo testing libtool +echo --------------------------------------------- + +dnl first, we set static to no! +dnl if we want it, use --enable-static +AC_ENABLE_STATIC(no) + +AC_LIBTOOL_DLOPEN +AC_PROG_LIBTOOL + +dnl Fix up the INSTALL macro if it s a relative path. We want the +dnl full-path to the binary instead. +case "$INSTALL" in + *install-sh*) + INSTALL='\${KERNEL_ROOT_DIR}'/salome_adm/unix/config_files/install-sh + ;; +esac + +echo +echo --------------------------------------------- +echo testing C/C++ +echo --------------------------------------------- +echo + +cc_ok=no +dnl inutil car libtool +dnl AC_PROG_CC +AC_PROG_CXX +AC_DEPEND_FLAG +# AC_CC_WARNINGS([ansi]) +cc_ok=yes + +echo +echo --------------------------------------------- +echo testing Fortran +echo --------------------------------------------- +echo + +fortran_ok=no +AC_PROG_F77 +AC_F77_LIBRARY_LDFLAGS +AC_PROG_FC +AC_FC_LIBRARY_LDFLAGS +if test "X$FC" != "X" ; then + fortran_ok=yes +fi + +dnl Library libdl : +AC_CHECK_LIB(dl,dlopen) + +dnl add library libm : +AC_CHECK_LIB(m,ceil) + +dnl +dnl Well we use sstream which is not in gcc pre-2.95.3 +dnl We must test if it exists. If not, add it in include ! +dnl + +AC_CXX_HAVE_SSTREAM + +echo +echo --------------------------------------------- +echo BOOST Library +echo --------------------------------------------- +echo + +CHECK_BOOST + +dnl +dnl --------------------------------------------- +dnl testing MPICH +dnl --------------------------------------------- +dnl + +CHECK_MPICH + +echo +echo --------------------------------------------- +echo testing LEX \& YACC +echo --------------------------------------------- +echo + +lex_yacc_ok=no +AC_PROG_YACC +AC_PROG_LEX +lex_yacc_ok=yes + +echo +echo --------------------------------------------- +echo testing python +echo --------------------------------------------- +echo + +CHECK_PYTHON + +AM_PATH_PYTHON(2.3) + +dnl echo +dnl echo --------------------------------------------- +dnl echo testing java +dnl echo --------------------------------------------- +dnl echo + +dnl CHECK_JAVA + +echo +echo --------------------------------------------- +echo testing swig +echo --------------------------------------------- +echo + +CHECK_SWIG + +echo +echo --------------------------------------------- +echo testing threads +echo --------------------------------------------- +echo + +ENABLE_PTHREADS + +echo +echo --------------------------------------------- +echo testing omniORB +echo --------------------------------------------- +echo + +CHECK_OMNIORB + +dnl echo +dnl echo --------------------------------------------- +dnl echo testing mico +dnl echo --------------------------------------------- +dnl echo + +dnl CHECK_MICO + +echo +echo --------------------------------------------- +echo default ORB : omniORB +echo --------------------------------------------- +echo + +DEFAULT_ORB=omniORB +CHECK_CORBA + +AC_SUBST_FILE(CORBA) +corba=make_$ORB +CORBA=adm_local/unix/$corba + +HEXOTICPLUGIN_WITH_GUI=yes + +AM_CONDITIONAL(HEXOTICPLUGIN_ENABLE_GUI, [test "${HEXOTICPLUGIN_WITH_GUI}" = "yes"]) + +if test "${HEXOTICPLUGIN_WITH_GUI}" = "yes"; then + echo + echo --------------------------------------------- + echo testing openGL + echo --------------------------------------------- + echo + + CHECK_OPENGL + + echo + echo --------------------------------------------- + echo testing QT + echo --------------------------------------------- + echo + + CHECK_QT + + echo + echo --------------------------------------------- + echo testing VTK + echo --------------------------------------------- + echo + + CHECK_VTK + + echo + echo --------------------------------------------- + echo Testing GUI + echo --------------------------------------------- + echo + + CHECK_SALOME_GUI + + echo + echo --------------------------------------------- + echo Testing full GUI + echo --------------------------------------------- + echo + + CHECK_CORBA_IN_GUI + if test "x${CORBA_IN_GUI}" != "xyes"; then + echo "failed : For configure HexoticPLUGIN module necessary full GUI !" + exit + fi +fi + +echo +echo --------------------------------------------- +echo testing HDF5 +echo --------------------------------------------- +echo + +CHECK_HDF5 + +echo +echo --------------------------------------------- +echo Testing OpenCascade +echo --------------------------------------------- +echo + +CHECK_CAS + +echo +echo --------------------------------------------- +echo Testing html generators +echo --------------------------------------------- +echo + +CHECK_HTML_GENERATORS + +echo +echo --------------------------------------------- +echo Testing Hexotic +echo --------------------------------------------- +echo + +CHECK_HEXOTIC + +echo +echo --------------------------------------------- +echo Testing Kernel +echo --------------------------------------------- +echo + +CHECK_KERNEL + +echo +echo --------------------------------------------- +echo Testing Geom +echo --------------------------------------------- +echo + +CHECK_GEOM + +echo +echo --------------------------------------------- +echo Testing Med +echo --------------------------------------------- +echo + +CHECK_MED + +echo +echo --------------------------------------------- +echo Testing SMesh +echo --------------------------------------------- +echo + +CHECK_SMESH + +echo +echo --------------------------------------------- +echo Summary +echo --------------------------------------------- +echo + +#AM_CONDITIONAL( USE_GFORTRAN, [test "$F77" = "gfortran"]) + +if test "${HEXOTICPLUGIN_WITH_GUI}" = "yes"; then +variables="cc_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok omniORB_ok occ_ok doxygen_ok graphviz_ok Kernel_ok Geom_ok Med_ok SMesh_ok SalomeGUI_ok" +opt_variables="Hexotic_ok" +fi +if test "${HEXOTICPLUGIN_WITH_GUI}" = "no"; then +variables="cc_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok hdf5_ok omniORB_ok occ_ok doxygen_ok graphviz_ok Kernel_ok Geom_ok Med_ok SMesh_ok" +opt_variables="Hexotic_ok" +fi + +echo +echo --- Mandatory products : +echo + +for var in $variables +do + printf " %10s : " `echo \$var | sed -e "s,_ok,,"` + eval echo \$$var +done + +echo +echo --- Optional products : +echo + +for var in $opt_variables +do + printf " %10s : " `echo \$var | sed -e "s,_ok,,"` + eval echo \$$var +done + + +echo +echo "Default ORB : $DEFAULT_ORB" +echo + +dnl We don t need to say when we re entering directories if we re using +dnl GNU make becuase make does it for us. +if test "X$GMAKE" = "Xyes"; then + AC_SUBST(SETX) SETX=":" +else + AC_SUBST(SETX) SETX="set -x" +fi + +dnl copy shells and utilities contained in the bin directory +dnl excluding .in files (treated in AC-OUTPUT below) and CVS +dnl directory + +echo +echo --------------------------------------------- +echo generating Makefiles and configure files +echo --------------------------------------------- +echo + +#AC_OUTPUT_COMMANDS([ \ +# chmod +x ./bin/*; \ +# chmod +x ./bin/salome/*; +#]) + +# This list is initiated using autoscan and must be updated manually +# when adding a new file .in to manage. When you execute +# autoscan, the Makefile list is generated in the output file configure.scan. +# This could be helpfull to update de configuration. +AC_OUTPUT([ \ + ./salome_adm/unix/SALOMEconfig.h \ + ./adm_local/Makefile \ + ./adm_local/unix/Makefile \ + ./adm_local/unix/config_files/Makefile \ + ./bin/VERSION \ + ./bin/Makefile \ + ./idl/Makefile \ + ./resources/Makefile \ + ./src/Makefile \ + ./src/HexoticPlugin/Makefile \ + ./src/GUI/Makefile \ + ./HexoticPLUGIN_version.h \ + Makefile \ +]) diff --git a/configure.in.base b/configure.in.base deleted file mode 100644 index 7f95abb..0000000 --- a/configure.in.base +++ /dev/null @@ -1,427 +0,0 @@ -# -# PLEASE DO NOT MODIFY configure.in FILE -# -# ALL CHANGES WILL BE DISCARDED BY THE NEXT -# build_configure COMMAND -# -# CHANGES MUST BE MADE IN configure.in.base FILE -# -# -# Author : Lioka RAZAFINDRAZAKA (CEA) -# Date : 2006/06/30 -# Modified by : Patrick GOLDBRONN (CEA) -# Modified by : Marc Tajchman (CEA) -# -# Created from configure.in.base -# - -AC_INIT(src) -AC_CONFIG_AUX_DIR(${KERNEL_ROOT_DIR}/salome_adm/unix/config_files/DEPRECATED) -AC_CANONICAL_HOST - -PACKAGE=salome -AC_SUBST(PACKAGE) - -VERSION=0.0.1 -AC_SUBST(VERSION) - -dnl -dnl Initialize source and build root directories -dnl - -ROOT_BUILDDIR=`pwd` -ROOT_SRCDIR=`echo $0 | sed -e "s,[[^/]]*$,,;s,/$,,;s,^$,.,"` -cd $ROOT_SRCDIR -ROOT_SRCDIR=`pwd` -cd $ROOT_BUILDDIR - -AC_SUBST(ROOT_SRCDIR) -AC_SUBST(ROOT_BUILDDIR) - -echo -echo Source root directory : $ROOT_SRCDIR -echo Build root directory : $ROOT_BUILDDIR -echo -echo - -if test -z "$AR"; then - AC_CHECK_PROGS(AR,ar xar,:,$PATH) -fi -AC_SUBST(AR) - -dnl Export the AR macro so that it will be placed in the libtool file -dnl correctly. -export AR - -echo -echo --------------------------------------------- -echo testing make -echo --------------------------------------------- -echo - -AC_PROG_MAKE_SET -AC_PROG_INSTALL -dnl -dnl libtool macro check for CC, LD, NM, LN_S, RANLIB, STRIP + pour les librairies dynamiques ! - -AC_ENABLE_DEBUG(yes) -AC_DISABLE_PRODUCTION - -echo --------------------------------------------- -echo testing libtool -echo --------------------------------------------- - -dnl first, we set static to no! -dnl if we want it, use --enable-static -AC_ENABLE_STATIC(no) - -AC_LIBTOOL_DLOPEN -AC_PROG_LIBTOOL - -dnl Fix up the INSTALL macro if it s a relative path. We want the -dnl full-path to the binary instead. -case "$INSTALL" in - *install-sh*) - INSTALL='\${KERNEL_ROOT_DIR}'/salome_adm/unix/config_files/install-sh - ;; -esac - -echo -echo --------------------------------------------- -echo testing C/C++ -echo --------------------------------------------- -echo - -cc_ok=no -dnl inutil car libtool -dnl AC_PROG_CC -AC_PROG_CXX -AC_DEPEND_FLAG -# AC_CC_WARNINGS([ansi]) -cc_ok=yes - -dnl Library libdl : -AC_CHECK_LIB(dl,dlopen) - -dnl add library libm : -AC_CHECK_LIB(m,ceil) - -dnl -dnl Well we use sstream which is not in gcc pre-2.95.3 -dnl We must test if it exists. If not, add it in include ! -dnl - -AC_CXX_HAVE_SSTREAM - -dnl -dnl --------------------------------------------- -dnl testing MPICH -dnl --------------------------------------------- -dnl - -CHECK_MPICH - -echo -echo --------------------------------------------- -echo testing LEX \& YACC -echo --------------------------------------------- -echo - -lex_yacc_ok=no -AC_PROG_YACC -AC_PROG_LEX -lex_yacc_ok=yes - -echo -echo --------------------------------------------- -echo testing python -echo --------------------------------------------- -echo - -CHECK_PYTHON - -echo -echo --------------------------------------------- -echo BOOST Library -echo --------------------------------------------- -echo - -CHECK_BOOST - -dnl echo -dnl echo --------------------------------------------- -dnl echo testing java -dnl echo --------------------------------------------- -dnl echo - -dnl CHECK_JAVA - -echo -echo --------------------------------------------- -echo testing swig -echo --------------------------------------------- -echo - -CHECK_SWIG - -echo -echo --------------------------------------------- -echo testing threads -echo --------------------------------------------- -echo - -ENABLE_PTHREADS - -echo -echo --------------------------------------------- -echo testing omniORB -echo --------------------------------------------- -echo - -CHECK_OMNIORB - -dnl echo -dnl echo --------------------------------------------- -dnl echo testing mico -dnl echo --------------------------------------------- -dnl echo - -dnl CHECK_MICO - -echo -echo --------------------------------------------- -echo default ORB : omniORB -echo --------------------------------------------- -echo - -DEFAULT_ORB=omniORB -CHECK_CORBA - -AC_SUBST_FILE(CORBA) -corba=make_$ORB -CORBA=adm_local/unix/$corba - -echo -echo --------------------------------------------- -echo testing openGL -echo --------------------------------------------- -echo - -CHECK_OPENGL - -echo -echo --------------------------------------------- -echo testing QT -echo --------------------------------------------- -echo - -CHECK_QT - -echo -echo --------------------------------------------- -echo testing MSG2QM -echo --------------------------------------------- -echo - -CHECK_MSG2QM - -echo -echo --------------------------------------------- -echo testing VTK -echo --------------------------------------------- -echo - -CHECK_VTK - -echo -echo --------------------------------------------- -echo testing HDF5 -echo --------------------------------------------- -echo - -CHECK_HDF5 - -echo -echo --------------------------------------------- -echo Testing OpenCascade -echo --------------------------------------------- -echo - -CHECK_CAS - -echo -echo --------------------------------------------- -echo Testing html generators -echo --------------------------------------------- -echo - -CHECK_HTML_GENERATORS - -echo -echo --------------------------------------------- -echo Testing GUI -echo --------------------------------------------- -echo - -CHECK_SALOME_GUI - -echo -echo --------------------------------------------- -echo Testing full GUI -echo --------------------------------------------- -echo - -CHECK_CORBA_IN_GUI -if test "x${CORBA_IN_GUI}" != "xyes"; then - echo "failed : For configure HexoticPLUGIN module necessary full GUI !" - exit -fi - -echo -echo --------------------------------------------- -echo Testing Kernel -echo --------------------------------------------- -echo - -CHECK_KERNEL - -echo -echo --------------------------------------------- -echo Testing Geom -echo --------------------------------------------- -echo - -CHECK_GEOM - -# echo -# echo --------------------------------------------- -# echo Testing Med -# echo --------------------------------------------- -# echo -# -# CHECK_MED - -echo -echo --------------------------------------------- -echo Testing Hexotic -echo --------------------------------------------- -echo - -CHECK_HEXOTIC - -echo -echo --------------------------------------------- -echo Testing SMesh -echo --------------------------------------------- -echo - -CHECK_SMESH - -echo -echo --------------------------------------------- -echo Summary -echo --------------------------------------------- -echo - -echo Configure -variables="cc_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok omniORB_ok occ_ok doxygen_ok graphviz_ok Kernel_ok Geom_ok SMesh_ok Hexotic_ok" - -for var in $variables -do - printf " %10s : " `echo \$var | sed -e "s,_ok,,"` - eval echo \$$var -done - -echo -echo "Default ORB : $DEFAULT_ORB" -echo - -dnl generals files which could be included in every makefile - -AC_SUBST_FILE(COMMENCE) COMMENCE=adm_local/unix/make_commence -AC_SUBST_FILE(CONCLUDE) CONCLUDE=salome_adm/unix/make_conclude -AC_SUBST_FILE(MODULE) MODULE=salome_adm/unix/make_module - -dnl les dependences -AC_SUBST_FILE(DEPEND) DEPEND=salome_adm/unix/depend - -dnl We don t need to say when we re entering directories if we re using -dnl GNU make becuase make does it for us. -if test "X$GMAKE" = "Xyes"; then - AC_SUBST(SETX) SETX=":" -else - AC_SUBST(SETX) SETX="set -x" -fi - -# make other build directories -for rep in salome_adm adm_local doc bin/salome include/salome lib${LIB_LOCATION_SUFFIX}/salome share/salome/resources idl -do -# if test ! -d $rep ; then -# eval mkdir $rep -# fi - $INSTALL -d $rep -done - -echo -echo --------------------------------------------- -echo copying resource files, shell scripts, and -echo xml files -echo --------------------------------------------- -echo - - -dnl copy resources directories - -#for i in `find $ROOT_SRCDIR -name 'resources' -print` -#do -# local_res=`echo $i | sed -e "s,$ROOT_SRCDIR,.,"` -# local_res_dir=`echo $local_res | sed -e "s,[[^/]]*$,,;s,/$,,;s,^$,.,"` -# mkdir -p $local_res_dir -# cd $local_res_dir -# ln -fs $i -# echo $local_res -# cd $ROOT_BUILDDIR -#done - -dnl copy shells and utilities contained in the bin directory -dnl excluding .in files (treated in AC-OUTPUT below) and CVS -dnl directory - -#mkdir -p bin/salome -#cd bin/salome -#for i in $ROOT_SRCDIR/bin/* -#do -# local_bin=`echo $i | sed -e "s,$ROOT_SRCDIR,.,"` -# case "$local_bin" in -# *.in | *~) ;; -# ./bin/CVS | ./bin/salome) ;; -# *) /usr/bin/install -C $i .; echo $local_bin ;; -# esac -#done -#cd $ROOT_BUILDDIR - -AC_SUBST_FILE(ENVSCRIPT) ENVSCRIPT=salome_adm/unix/envScript - -dnl copy xml files to the build tree (lib directory) -dnl pourquoi ???? - -#cd lib -#for i in `find $ROOT_SRCDIR -name "*.xml" -print` -#do -# ln -fs $i -# echo `echo $i | sed -e "s,$ROOT_SRCDIR,.,"` -#done -#cd $ROOT_BUILDDIR - - -echo -echo --------------------------------------------- -echo generating Makefiles and configure files -echo --------------------------------------------- -echo - -#AC_OUTPUT_COMMANDS([ \ -# chmod +x ./bin/* \ -#]) - -## do not delete this line diff --git a/env_Hexoticplugin-Src.sh b/env_Hexoticplugin-Src.sh deleted file mode 100644 index d90f7c2..0000000 --- a/env_Hexoticplugin-Src.sh +++ /dev/null @@ -1,3 +0,0 @@ -#------ Hexoticplugin-Src ------ -export HexoticPLUGIN_SRC_DIR=${INSTALL_ROOT}/HexoticPLUGIN_SRC -## diff --git a/idl/HexoticPlugin_Algorithm.idl b/idl/HexoticPlugin_Algorithm.idl index 0d3d331..094dd8c 100644 --- a/idl/HexoticPlugin_Algorithm.idl +++ b/idl/HexoticPlugin_Algorithm.idl @@ -1,27 +1,26 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPlugin_Algorithm.idl +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- // -// File : HexoticPlugin_Algorithm.idl -// Author : Lioka RAZAFINDRAZAKA (CEA) - #ifndef _SMESH_HexoticALGORITHM_IDL_ #define _SMESH_HexoticALGORITHM_IDL_ diff --git a/idl/Makefile.am b/idl/Makefile.am new file mode 100644 index 0000000..7112189 --- /dev/null +++ b/idl/Makefile.am @@ -0,0 +1,117 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : Makefile.am +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# This Makefile is responsible of generating the client and server +# implementation of IDL interfaces for both C++ and python usage. +# The building process of the C++ files is in charge of each source +# package and then is not manage here. +# +include $(top_srcdir)/adm_local/unix/make_common_starter.am + +BASEIDL_FILES = HexoticPlugin_Algorithm.idl + +# This variable defines the files to be installed +dist_salomeidl_DATA = $(BASEIDL_FILES) + +# GUI idl common library +lib_LTLIBRARIES = libSalomeIDLHexoticPLUGIN.la + +# Sources built from idl files +nodist_libSalomeIDLHexoticPLUGIN_la_SOURCES = HexoticPlugin_AlgorithmSK.cc + +# header files must be exported: other modules have to use this library +nodist_salomeinclude_HEADERS = $(BASEIDL_FILES:%.idl=%.hh) + +libSalomeIDLHexoticPLUGIN_la_CPPFLAGS =\ + $(KERNEL_CXXFLAGS) \ + $(GEOM_CXXFLAGS) \ + $(SMESH_CXXFLAGS) \ + @CORBA_CXXFLAGS@ \ + @CORBA_INCLUDES@ \ + -I$(top_builddir)/salome_adm/unix \ + -I$(top_builddir)/idl + +libSalomeIDLHexoticPLUGIN_la_LDFLAGS = -no-undefined -version-info=0:0:0 +libSalomeIDLHexoticPLUGIN_la_LIBADD = \ + $(KERNEL_LDFLAGS) -lSalomeIDLKernel \ + $(SMESH_LDFLAGS) -lSalomeIDLSMESH \ + $(GEOM_LDFLAGS) -lSalomeIDLGEOM \ + @CORBA_LIBS@ + +# These variables defines the building process of CORBA files +OMNIORB_IDL = @OMNIORB_IDL@ +OMNIORB_IDLCXXFLAGS = @OMNIORB_IDLCXXFLAGS@ +OMNIORB_IDLPYFLAGS = @OMNIORB_IDLPYFLAGS@ \ + -I$(top_builddir)/idl/salome \ + -I$(KERNEL_ROOT_DIR)/idl/salome \ + -I$(GEOM_ROOT_DIR)/idl/salome \ + -I$(SMESH_ROOT_DIR)/idl/salome + +IDLCXXFLAGS = \ + -bcxx \ + @IDLCXXFLAGS@ \ + -I$(top_builddir)/idl/salome \ + -I$(KERNEL_ROOT_DIR)/idl/salome \ + -I$(GEOM_ROOT_DIR)/idl/salome \ + -I$(SMESH_ROOT_DIR)/idl/salome \ + -I$(top_builddir)/salome_adm/unix +IDLPYFLAGS = \ + @IDLPYFLAGS@ \ + -I$(KERNEL_ROOT_DIR)/idl/salome \ + -I$(GEOM_ROOT_DIR)/idl/salome \ + -I$(SMESH_ROOT_DIR)/idl/salome + +# potential problem on parallel make on the following - multiple outputs +SUFFIXES = .idl .hh SK.cc +.idlSK.cc: + $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $< +.idl.hh: + $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $< + +install-exec-local: $(BASEIDL_FILES:%=$(top_srcdir)/idl/%) + $(INSTALL) -d $(DESTDIR)$(salomepythondir) + ls $^ | while read file; do \ + $(OMNIORB_IDL) $(IDLPYFLAGS) -C$(DESTDIR)$(salomepythondir) $$file ; \ + done + +# uninstall-local removes too much, but it works in distcheck +uninstall-local: + rm -rf $(DESTDIR)$(salomepythondir)/* + +mostlyclean-local: + -rm -f *.hh *.cc .depidl + +# we use cpp to generate dependencies between idl files. +# option x c tells the preprocessor to consider idl as a c file. +# if an idl is modified, all idl dependencies are rebuilt + +.depidl: $(BASEIDL_FILES) + @echo "" > $@ + @for dep in $^ dummy; do \ + if [ $$dep != "dummy" ]; then \ + echo Building dependencies for $$dep; \ + $(CPP) $(C_DEPEND_FLAG) -x c -I$(srcdir) -I$(KERNEL_ROOT_DIR)/idl/salome -I$(GEOM_ROOT_DIR)/idl/salome -I$(SMESH_ROOT_DIR)/idl/salome -I$(top_builddir)/salome_adm/unix $$dep 2>/dev/null | \ + sed 's/\.o/\SK.cc/' >>$@; \ + fi; \ + done ; + +-include .depidl diff --git a/idl/Makefile.in b/idl/Makefile.in deleted file mode 100644 index 165f7d7..0000000 --- a/idl/Makefile.in +++ /dev/null @@ -1,84 +0,0 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS, L3S, LJLL, MENSI -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ -# -# -# generate dependencies for idl file : -# - -# source path -top_srcdir=@top_srcdir@ -top_builddir=.. -srcdir=@srcdir@ -VPATH=.:${KERNEL_ROOT_DIR}/idl/salome:${GEOM_ROOT_DIR}/idl/salome :${SMESH_ROOT_DIR}/idl/salome -#:${MED_ROOT_DIR}/idl/salome - -@COMMENCE@ - -IDL_FILES = HexoticPlugin_Algorithm.idl - - -# copy all idl file in $(top_builddir)/idl -inc: $(top_builddir)/idl/salome $(IDL_FILES:%=$(top_builddir)/idl/salome/%) - -$(top_builddir)/idl/salome: - $(INSTALL) -d $@ - -$(IDL_FILES:%=$(top_builddir)/idl/salome/%):$(IDL_FILES:%=$(top_srcdir)/idl/%) - cp -f $^ $(top_builddir)/idl/salome - - -# python wrap -lib: pyidl - -PYTHON_BUILD_SITE=$(top_builddir)/lib@LIB_LOCATION_SUFFIX@/python$(PYTHON_VERSION)/site-packages/@PACKAGE@ - -pyidl: $(PYTHON_BUILD_SITE) $(IDL_FILES:%.idl=$(PYTHON_BUILD_SITE)/%_idl.py) - -$(PYTHON_BUILD_SITE): - $(INSTALL) -d $@ - -$(PYTHON_BUILD_SITE)/%_idl.py: $(top_builddir)/idl/salome/%.idl - $(OMNIORB_IDL) $(OMNIORB_IDLPYFLAGS) -C$(PYTHON_BUILD_SITE) $< - - -# install python client (generated from idl file) -install: $(IDL_FILES:%=$(top_builddir)/idl/salome/%) - $(INSTALL) -d $(idldir) $(PYTHON_SITE_INSTALL) - $(INSTALL_DATA) $^ $(idldir) - @for file in $^ dummy; do \ - if [ $$file != "dummy" ]; then \ - $(OMNIORB_IDL) $(OMNIORB_IDLPYFLAGS) -C$(PYTHON_SITE_INSTALL) $$file ; \ - fi ; \ - done ; - -uninstall: - -$(RM) $(IDL_FILES:%=$(idldir)/%) - -$(RM) $(IDL_FILES:%.idl=$(PYTHON_SITE_INSTALL)/%_idl.py) - -# clean -cleandep: - -$(RM) .dep* - -clean: cleandep - -$(RM) $(top_builddir)/idl/salome/*.idl - -$(RM) $(PYTHON_BUILD_SITE)/*.py - -distclean: clean - -$(RM) Makefile - diff --git a/resources/HexoticPLUGIN.xml b/resources/HexoticPLUGIN.xml index bd4981a..7600da0 100644 --- a/resources/HexoticPLUGIN.xml +++ b/resources/HexoticPLUGIN.xml @@ -1,5 +1,25 @@ + @@ -13,6 +33,7 @@ @@ -21,6 +42,7 @@ icon-id="mesh_algo_Hexotic.png" hypos="Hexotic_Parameters" input="TRIA,QUAD" + need-geom="false" dim="3"/> diff --git a/resources/HexoticPlugin.xml b/resources/HexoticPlugin.xml index bd4981a..ae50699 100644 --- a/resources/HexoticPlugin.xml +++ b/resources/HexoticPlugin.xml @@ -1,5 +1,25 @@ + diff --git a/resources/Makefile.am b/resources/Makefile.am new file mode 100644 index 0000000..97fb79e --- /dev/null +++ b/resources/Makefile.am @@ -0,0 +1,38 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : Makefile.am +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# +include $(top_srcdir)/adm_local/unix/make_common_starter.am + +dist_salomeres_DATA = \ + HexoticPLUGIN.xml \ + HexoticPlugin.xml \ + SalomeApp.xml + +if HEXOTICPLUGIN_ENABLE_GUI + dist_salomeres_DATA += \ + Hexotic.png \ + mesh_algo_Hexotic.png \ + mesh_hypo_Hexotic.png \ + mesh_tree_algo_Hexotic.png \ + mesh_tree_hypo_Hexotic.png +endif diff --git a/resources/SalomeApp.xml b/resources/SalomeApp.xml new file mode 100644 index 0000000..4d07b89 --- /dev/null +++ b/resources/SalomeApp.xml @@ -0,0 +1,29 @@ + + +
+ +
+
+ + +
+
diff --git a/src/GUI/HexoticPLUGIN_images.po b/src/GUI/HexoticPLUGIN_images.po deleted file mode 100644 index 12d5d24..0000000 --- a/src/GUI/HexoticPLUGIN_images.po +++ /dev/null @@ -1,59 +0,0 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS, L3S, LJLL, MENSI -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ -# -# This is a Qt message file in .po format. Each msgid starts with -# a scope. This scope should *NOT* be translated - eg. "Foo::Bar" -# would be translated to "Pub", not "Foo::Pub". -msgid "" -msgstr "" -"Project-Id-Version: PROJECT VERSION\n" -"POT-Creation-Date: 2002-05-28 10:57:43 AM CEST\n" -"PO-Revision-Date: YYYY-MM-DD\n" -"Last-Translator: FULLNAME \n" -"Content-Type: text/plain; charset=iso-8859-1\n" - - -#----------------------------------------------------------- -# Hypothesis -#----------------------------------------------------------- - -msgid "ICON_DLG_Hexotic_PARAMETERS" -msgstr "mesh_hypo_Hexotic.png" - -msgid "ICON_DLG_Hexotic_PARAMETERS_3D" -msgstr "mesh_hypo_Hexotic.png" - -#----------------------------------------------------------- -# ObjectBrowser -#----------------------------------------------------------- - -msgid "ICON_SMESH_TREE_ALGO_Hexotic_3D" -msgstr "mesh_tree_algo_tetra.png" - -msgid "ICON_SMESH_TREE_ALGO_Hexotic_3D" -msgstr "mesh_tree_algo_Hexotic.png" - -msgid "ICON_SMESH_TREE_ALGO_Hexotic_2D3D" -msgstr "mesh_tree_algo_Hexotic.png" - -msgid "ICON_SMESH_TREE_HYPO_Hexotic_Parameters" -msgstr "mesh_tree_hypo_Hexotic.png" - -msgid "ICON_SMESH_TREE_HYPO_Hexotic_Parameters_3D" -msgstr "mesh_tree_hypo_Hexotic.png" diff --git a/src/GUI/HexoticPLUGIN_images.ts b/src/GUI/HexoticPLUGIN_images.ts new file mode 100644 index 0000000..5fb7ac6 --- /dev/null +++ b/src/GUI/HexoticPLUGIN_images.ts @@ -0,0 +1,50 @@ + + + + + @default + + ICON_DLG_Hexotic_PARAMETERS + mesh_hypo_Hexotic.png + + + ICON_DLG_Hexotic_PARAMETERS_3D + mesh_hypo_Hexotic.png + + + ICON_SMESH_TREE_ALGO_Hexotic_2D3D + mesh_tree_algo_Hexotic.png + + + ICON_SMESH_TREE_ALGO_Hexotic_3D + mesh_tree_algo_Hexotic.png + + + ICON_SMESH_TREE_HYPO_Hexotic_Parameters + mesh_tree_hypo_Hexotic.png + + + ICON_SMESH_TREE_HYPO_Hexotic_Parameters_3D + mesh_tree_hypo_Hexotic.png + + + diff --git a/src/GUI/HexoticPLUGIN_msg_en.po b/src/GUI/HexoticPLUGIN_msg_en.po deleted file mode 100644 index e2ec09c..0000000 --- a/src/GUI/HexoticPLUGIN_msg_en.po +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS, L3S, LJLL, MENSI -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ -# -# This is a Qt message file in .po format. Each msgid starts with -# a scope. This scope should *NOT* be translated - eg. "Foo::Bar" -# would be translated to "Pub", not "Foo::Pub". -msgid "" -msgstr "" -"Project-Id-Version: PROJECT VERSION\n" -"POT-Creation-Date: 2002-05-28 10:46:48 AM CEST\n" -"PO-Revision-Date: YYYY-MM-DD\n" -"Last-Translator: FULLNAME \n" -"Content-Type: text/plain; charset=iso-8859-1\n" - -msgid "Hexotic_3D_TITLE" -msgstr "Hypothesis Construction" - -msgid "Hexotic_3D_HYPOTHESIS" -msgstr "Hexotic 3D" - -msgid "Hexotic_HEXES_MIN_LEVEL" -msgstr "Nb. Hexes Min Level" - -msgid "Hexotic_HEXES_MAX_LEVEL" -msgstr "Nb. Hexes Max Level" - -msgid "Hexotic_QUADRANGLES" -msgstr "Salome Quadrangles" - -# -msgid "Hexotic_IGNORE_RIDGES" -msgstr "Generate smooth meshes no ridges" -# -msgid "Hexotic_INVALID_ELEMENTS" -msgstr "Authorize invalid elements" -# -msgid "Hexotic_SHARP_ANGLE_THRESHOLD" -msgstr "Sharp angle threshold in degrees" diff --git a/src/GUI/HexoticPLUGIN_msg_en.ts b/src/GUI/HexoticPLUGIN_msg_en.ts new file mode 100644 index 0000000..b3f4e61 --- /dev/null +++ b/src/GUI/HexoticPLUGIN_msg_en.ts @@ -0,0 +1,58 @@ + + + + + @default + + Hexotic_3D_HYPOTHESIS + Hexotic 3D + + + Hexotic_3D_TITLE + Hypothesis Construction + + + Hexotic_HEXES_MAX_LEVEL + Nb. Hexes Max Level + + + Hexotic_HEXES_MIN_LEVEL + Nb. Hexes Min Level + + + Hexotic_IGNORE_RIDGES + Generate smooth meshes no ridges + + + Hexotic_INVALID_ELEMENTS + Authorize invalid elements + + + Hexotic_QUADRANGLES + Salome Quadrangles + + + Hexotic_SHARP_ANGLE_THRESHOLD + Sharp angle threshold in degrees + + + diff --git a/src/GUI/HexoticPluginGUI.cxx b/src/GUI/HexoticPluginGUI.cxx index b173d25..2116d53 100755 --- a/src/GUI/HexoticPluginGUI.cxx +++ b/src/GUI/HexoticPluginGUI.cxx @@ -1,29 +1,26 @@ -// HexoticPlugin GUI: GUI for plugged-in mesher HexoticPlugin +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // -// Copyright (C) 2003 CEA -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org or email : webmaster.salome@opencascade.org +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPluginGUI.cxx +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- // -// File : HexoticPluginGUI.cxx -// Author : Lioka RAZAFINDRAZAKA (CEA) -// Module : HexoticPlugin - #include "HexoticPluginGUI_HypothesisCreator.h" //============================================================================= diff --git a/src/GUI/HexoticPluginGUI_HypothesisCreator.cxx b/src/GUI/HexoticPluginGUI_HypothesisCreator.cxx index 0f9df0f..c09ae4f 100644 --- a/src/GUI/HexoticPluginGUI_HypothesisCreator.cxx +++ b/src/GUI/HexoticPluginGUI_HypothesisCreator.cxx @@ -1,30 +1,26 @@ -// HexoticPlugin GUI: GUI for plugged-in mesher HexoticPlugin +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // -// Copyright (C) 2003 CEA -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org or email : webmaster.salome@opencascade.org +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPluginGUI_HypothesisCreator.cxx +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- // -// File : HexoticPluginGUI_HypothesisCreator.cxx -// Author : Lioka RAZAFINDRAZAKA (CEA) -// Module : HexoticPlugin -// $Header: - #include "HexoticPluginGUI_HypothesisCreator.h" #include @@ -33,35 +29,30 @@ #include CORBA_SERVER_HEADER(HexoticPlugin_Algorithm) #include - +#include #include - #include -#include - -#include - -#include -#include -#include -#include -#include -#include -#include - - enum Fineness - { - VeryCoarse, - Coarse, - Moderate, - Fine, - VeryFine, - UserDefined - }; + +#include +#include +#include +#include +#include +#include +#include + +enum Fineness { + VeryCoarse, + Coarse, + Moderate, + Fine, + VeryFine, + UserDefined +}; HexoticPluginGUI_HypothesisCreator::HexoticPluginGUI_HypothesisCreator( const QString& theHypType ) : SMESHGUI_GenericHypothesisCreator( theHypType ), - myIs3D(true) + myIs3D( true ) { } @@ -80,53 +71,60 @@ bool HexoticPluginGUI_HypothesisCreator::checkParams() const QFrame* HexoticPluginGUI_HypothesisCreator::buildFrame() { - QFrame* fr = new QFrame( 0, "myframe" ); - QVBoxLayout* lay = new QVBoxLayout( fr, 7, 0 ); + QFrame* fr = new QFrame( 0 ); + QVBoxLayout* lay = new QVBoxLayout( fr ); + lay->setMargin( 5 ); + lay->setSpacing( 0 ); - QGroupBox* GroupC1 = new QGroupBox( 2, Qt::Horizontal, fr, "GroupC1" ); + QGroupBox* GroupC1 = new QGroupBox( tr( "SMESH_ARGUMENTS" ), fr ); lay->addWidget( GroupC1 ); - GroupC1->setTitle( tr( "SMESH_ARGUMENTS" ) ); - GroupC1->layout()->setSpacing( 6 ); - GroupC1->layout()->setMargin( 11 ); + QGridLayout* l = new QGridLayout( GroupC1 ); + l->setSpacing( 6 ); + l->setMargin( 11 ); + int row = 0; myName = 0; if( isCreation() ) { - new QLabel( tr( "SMESH_NAME" ), GroupC1 ); + l->addWidget( new QLabel( tr( "SMESH_NAME" ), GroupC1 ), row, 0, 1, 1 ); myName = new QLineEdit( GroupC1 ); + l->addWidget( myName, row++, 1, 1, 1 ); } HexoticPlugin::HexoticPlugin_Hypothesis_var h = HexoticPlugin::HexoticPlugin_Hypothesis::_narrow( initParamsHypothesis() ); - - new QLabel( tr( "Hexotic_HEXES_MIN_LEVEL" ), GroupC1 ); + + l->addWidget( new QLabel( tr( "Hexotic_HEXES_MIN_LEVEL" ), GroupC1 ), row, 0, 1, 1 ); myHexesMinLevel = new QtxIntSpinBox( GroupC1 ); - // myHexesMinLevel->setMinValue( 3 ); - myHexesMinLevel->setMinValue( h->GetHexesMinLevel() ); - myHexesMinLevel->setMaxValue( 10 ); - myHexesMinLevel->setLineStep( 1 ); + // myHexesMinLevel->setMinimum( 3 ); + myHexesMinLevel->setMinimum( h->GetHexesMinLevel() ); + myHexesMinLevel->setMaximum( 10 ); + myHexesMinLevel->setSingleStep( 1 ); + l->addWidget( myHexesMinLevel, row++, 1, 1, 1 ); - new QLabel( tr( "Hexotic_HEXES_MAX_LEVEL" ), GroupC1 ); + l->addWidget( new QLabel( tr( "Hexotic_HEXES_MAX_LEVEL" ), GroupC1 ), row, 0, 1, 1 ); myHexesMaxLevel = new QtxIntSpinBox( GroupC1 ); - myHexesMaxLevel->setMinValue( 3 ); - myHexesMaxLevel->setMaxValue( 10 ); - myHexesMaxLevel->setLineStep( 1 ); + myHexesMaxLevel->setMinimum( 3 ); + myHexesMaxLevel->setMaximum( 10 ); + myHexesMaxLevel->setSingleStep( 1 ); + l->addWidget( myHexesMaxLevel, row++, 1, 1, 1 ); myHexoticQuadrangles = new QCheckBox( tr( "Hexotic_QUADRANGLES" ), GroupC1 ); - GroupC1->addSpace(0); + l->addWidget( myHexoticQuadrangles, row++, 0, 1, 2 ); myIs3D = true; myHexoticIgnoreRidges = new QCheckBox( tr( "Hexotic_IGNORE_RIDGES" ), GroupC1 ); - GroupC1->addSpace(0); + l->addWidget( myHexoticIgnoreRidges, row++, 0, 1, 2 ); myHexoticInvalidElements = new QCheckBox( tr( "Hexotic_INVALID_ELEMENTS" ), GroupC1 ); - GroupC1->addSpace(0); + l->addWidget( myHexoticInvalidElements, row++, 0, 1, 2 ); - new QLabel( tr( "Hexotic_SHARP_ANGLE_THRESHOLD" ), GroupC1 ); + l->addWidget( new QLabel( tr( "Hexotic_SHARP_ANGLE_THRESHOLD" ), GroupC1 ), row, 0, 1, 1 ); myHexoticSharpAngleThreshold = new QtxIntSpinBox( GroupC1 ); - myHexoticSharpAngleThreshold->setMinValue( 0 ); - myHexoticSharpAngleThreshold->setMaxValue( 90 ); - myHexoticSharpAngleThreshold->setLineStep( 1 ); + myHexoticSharpAngleThreshold->setMinimum( 0 ); + myHexoticSharpAngleThreshold->setMaximum( 90 ); + myHexoticSharpAngleThreshold->setSingleStep( 1 ); + l->addWidget( myHexoticSharpAngleThreshold, row++, 1, 1, 1 ); return fr; } @@ -194,7 +192,7 @@ bool HexoticPluginGUI_HypothesisCreator::storeParamsToHypo( const HexoticHypothe try { if( isCreation() ) - SMESH::SetName( SMESH::FindSObject( h ), h_data.myName.latin1() ); + SMESH::SetName( SMESH::FindSObject( h ), h_data.myName.toLatin1().constData() ); h->SetHexesMinLevel( h_data.myHexesMinLevel ); h->SetHexesMaxLevel( h_data.myHexesMaxLevel ); @@ -226,16 +224,16 @@ bool HexoticPluginGUI_HypothesisCreator::readParamsFromWidgets( HexoticHypothesi QString HexoticPluginGUI_HypothesisCreator::caption() const { - return tr( QString( "Hexotic_%1_TITLE" ).arg(myIs3D?QString("3D"):QString("3D")) ); + return myIs3D ? tr( "Hexotic_3D_TITLE" ) : tr( "Hexotic_3D_TITLE" ); // ??? 3D/2D ??? } QPixmap HexoticPluginGUI_HypothesisCreator::icon() const { - QString hypIconName = tr( QString("ICON_DLG_Hexotic_PARAMETERS%1").arg(myIs3D?QString(""):QString("")) ); - return SUIT_Session::session()->resourceMgr()->loadPixmap( "HexoticPlugin", hypIconName ); + QString hypIconName = myIs3D ? tr( "ICON_DLG_Hexotic_PARAMETERS" ) : tr( "ICON_DLG_Hexotic_PARAMETERS" ); + return SUIT_Session::session()->resourceMgr()->loadPixmap( "HexoticPLUGIN", hypIconName ); } QString HexoticPluginGUI_HypothesisCreator::type() const { - return tr( QString( "Hexotic_%1_HYPOTHESIS" ).arg(myIs3D?QString("3D"):QString("3D")) ); + return myIs3D ? tr( "Hexotic_3D_HYPOTHESIS" ) : tr( "Hexotic_3D_HYPOTHESIS" ); // ??? 3D/2D ??? } diff --git a/src/GUI/HexoticPluginGUI_HypothesisCreator.h b/src/GUI/HexoticPluginGUI_HypothesisCreator.h index 1110dcb..50858cd 100644 --- a/src/GUI/HexoticPluginGUI_HypothesisCreator.h +++ b/src/GUI/HexoticPluginGUI_HypothesisCreator.h @@ -1,37 +1,32 @@ -// HexoticPlugin GUI: GUI for plugged-in mesher HexoticPlugin +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // -// Copyright (C) 2003 CEA -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org or email : webmaster.salome@opencascade.org +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// File : HexoticPluginGUI_HypothesisCreator.h -// Author : Lioka RAZAFINDRAZAKA (CEA) -// Module : HexoticPlugin -// $Header: - -#ifndef HexoticPLUGINGUI_HypothesisCreator_HeaderFile -#define HexoticPLUGINGUI_HypothesisCreator_HeaderFile +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPluginGUI_HypothesisCreator.h +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- +// +#ifndef HexoticPLUGINGUI_HypothesisCreator_H +#define HexoticPLUGINGUI_HypothesisCreator_H #include class QtxIntSpinBox; -class QtxDblSpinBox; class QCheckBox; class QLineEdit; @@ -81,7 +76,7 @@ private: QCheckBox* myHexoticInvalidElements; QtxIntSpinBox* myHexoticSharpAngleThreshold; - bool myIs3D; + bool myIs3D; }; #endif diff --git a/src/GUI/HexoticPlugin_images.po b/src/GUI/HexoticPlugin_images.po deleted file mode 100755 index 12d5d24..0000000 --- a/src/GUI/HexoticPlugin_images.po +++ /dev/null @@ -1,59 +0,0 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS, L3S, LJLL, MENSI -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ -# -# This is a Qt message file in .po format. Each msgid starts with -# a scope. This scope should *NOT* be translated - eg. "Foo::Bar" -# would be translated to "Pub", not "Foo::Pub". -msgid "" -msgstr "" -"Project-Id-Version: PROJECT VERSION\n" -"POT-Creation-Date: 2002-05-28 10:57:43 AM CEST\n" -"PO-Revision-Date: YYYY-MM-DD\n" -"Last-Translator: FULLNAME \n" -"Content-Type: text/plain; charset=iso-8859-1\n" - - -#----------------------------------------------------------- -# Hypothesis -#----------------------------------------------------------- - -msgid "ICON_DLG_Hexotic_PARAMETERS" -msgstr "mesh_hypo_Hexotic.png" - -msgid "ICON_DLG_Hexotic_PARAMETERS_3D" -msgstr "mesh_hypo_Hexotic.png" - -#----------------------------------------------------------- -# ObjectBrowser -#----------------------------------------------------------- - -msgid "ICON_SMESH_TREE_ALGO_Hexotic_3D" -msgstr "mesh_tree_algo_tetra.png" - -msgid "ICON_SMESH_TREE_ALGO_Hexotic_3D" -msgstr "mesh_tree_algo_Hexotic.png" - -msgid "ICON_SMESH_TREE_ALGO_Hexotic_2D3D" -msgstr "mesh_tree_algo_Hexotic.png" - -msgid "ICON_SMESH_TREE_HYPO_Hexotic_Parameters" -msgstr "mesh_tree_hypo_Hexotic.png" - -msgid "ICON_SMESH_TREE_HYPO_Hexotic_Parameters_3D" -msgstr "mesh_tree_hypo_Hexotic.png" diff --git a/src/GUI/HexoticPlugin_msg_en.po b/src/GUI/HexoticPlugin_msg_en.po deleted file mode 100755 index ab00003..0000000 --- a/src/GUI/HexoticPlugin_msg_en.po +++ /dev/null @@ -1,86 +0,0 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS, L3S, LJLL, MENSI -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ -# -# This is a Qt message file in .po format. Each msgid starts with -# a scope. This scope should *NOT* be translated - eg. "Foo::Bar" -# would be translated to "Pub", not "Foo::Pub". -msgid "" -msgstr "" -"Project-Id-Version: PROJECT VERSION\n" -"POT-Creation-Date: 2002-05-28 10:46:48 AM CEST\n" -"PO-Revision-Date: YYYY-MM-DD\n" -"Last-Translator: FULLNAME \n" -"Content-Type: text/plain; charset=iso-8859-1\n" - -msgid "Hexotic_MAX_SIZE" -msgstr "Max. Size" - -msgid "Hexotic_SECOND_ORDER" -msgstr "Second Order" - -msgid "Hexotic_OPTIMIZE" -msgstr "Optimize" - -msgid "Hexotic_FINENESS" -msgstr "Fineness" - -msgid "Hexotic_VERYCOARSE" -msgstr "Very Coarse" - -msgid "Hexotic_COARSE" -msgstr "Coarse" - -msgid "Hexotic_MODERATE" -msgstr "Moderate" - -msgid "Hexotic_FINE" -msgstr "Fine" - -msgid "Hexotic_VERYFINE" -msgstr "Very Fine" - -msgid "Hexotic_CUSTOM" -msgstr "Custom" - -msgid "Hexotic_GROWTH_RATE" -msgstr "Growth Rate" - -msgid "Hexotic_SEG_PER_EDGE" -msgstr "Nb. Segs per Edge" - -msgid "Hexotic_SEG_PER_RADIUS" -msgstr "Nb. Segs per Radius" - -msgid "Hexotic_ALLOW_QUADRANGLES" -msgstr "Allow Quadrangles" - -msgid "Hexotic_3D_HYPOTHESIS" -msgstr "Hexotic 3D" - -msgid "Hexotic_3D_TITLE" -msgstr "Hypothesis Construction" - -msgid "Hexotic_IGNORE_RIDGES" -msgstr "Generate smooth meshes ie no ridges" - -msgid "Hexotic_INVALID_ELEMENTS" -msgstr "Authorize invalid elements" - -msgid "Hexotic_SHARP_ANGLE_THRESHOLD" -msgstr "Sharp angle threshold in degrees" diff --git a/src/GUI/Makefile.am b/src/GUI/Makefile.am new file mode 100644 index 0000000..04c1c77 --- /dev/null +++ b/src/GUI/Makefile.am @@ -0,0 +1,69 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : Makefile.am +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# +include $(top_srcdir)/adm_local/unix/make_common_starter.am + +# header files +salomeinclude_HEADERS = + +# Libraries targets +lib_LTLIBRARIES = libHexoticPluginGUI.la + +dist_libHexoticPluginGUI_la_SOURCES = \ + HexoticPluginGUI.cxx \ + HexoticPluginGUI_HypothesisCreator.h \ + HexoticPluginGUI_HypothesisCreator.cxx + +MOC_FILES = \ + HexoticPluginGUI_HypothesisCreator_moc.cxx + +nodist_libHexoticPluginGUI_la_SOURCES = \ + $(MOC_FILES) + +# additionnal information to compil and link file + +libHexoticPluginGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(GEOM_CXXFLAGS) \ + $(MED_CXXFLAGS) \ + $(SMESH_CXXFLAGS) \ + $(BOOST_CPPFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../HexoticPlugin \ + -I$(top_builddir)/idl \ + -I$(top_builddir)/salome_adm/unix + +libHexoticPluginGUI_la_LDFLAGS = \ + ../HexoticPlugin/libHexoticEngine.la \ + ${SMESH_LDFLAGS} -lSMESH \ + $(CAS_KERNEL) + +# resources files +nodist_salomeres_DATA = \ + HexoticPLUGIN_images.qm \ + HexoticPLUGIN_msg_en.qm diff --git a/src/GUI/Makefile.in b/src/GUI/Makefile.in deleted file mode 100644 index db2feae..0000000 --- a/src/GUI/Makefile.in +++ /dev/null @@ -1,73 +0,0 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS, L3S, LJLL, MENSI -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ -# -# File : Makefile.in -// Author : Lioka RAZAFINDRAZAKA (CEA) -# Module : HexoticPLUGIN - -top_srcdir=@top_srcdir@ -top_builddir=../.. -srcdir=@srcdir@ -VPATH=.:@srcdir@:@top_srcdir@/idl:$(top_builddir)/idl:${KERNEL_ROOT_DIR}/idl/salome:${GUI_ROOT_DIR}/idl/salome:${GEOM_ROOT_DIR}/idl/salome:${SMESH_ROOT_DIR}/idl/salome:${MED_ROOT_DIR}/idl/salome - -@COMMENCE@ - -# .po files to transform in .qm -PO_FILES = \ - HexoticPLUGIN_images.po \ - HexoticPLUGIN_msg_en.po - -# Libraries targets -LIB = libHexoticPluginGUI.la - -LIB_SRC = \ - HexoticPluginGUI.cxx \ - HexoticPluginGUI_HypothesisCreator.cxx - -LIB_MOC = \ - HexoticPluginGUI_HypothesisCreator.h - -LIB_CLIENT_IDL = \ - SALOME_Exception.idl \ - SALOME_GenericObj.idl \ - SALOME_Component.idl \ - SALOME_Comm.idl \ - GEOM_Gen.idl \ - MED.idl \ - SMESH_Gen.idl \ - SMESH_Mesh.idl \ - SMESH_Group.idl \ - HexoticPlugin_Algorithm.idl - -LIB_SERVER_IDL = - -# additionnal information to compil and link file - -CPPFLAGS += $(QT_INCLUDES) $(OCC_INCLUDES) $(PYTHON_INCLUDES) \ - -I${KERNEL_ROOT_DIR}/include/salome -I${GUI_ROOT_DIR}/include/salome \ - -I${GEOM_ROOT_DIR}/include/salome -I${SMESH_ROOT_DIR}/include/salome \ - $(BOOST_CPPFLAGS) -CXXFLAGS += -I${KERNEL_ROOT_DIR}/include/salome -I${GUI_ROOT_DIR}/include/salome \ - -I${GEOM_ROOT_DIR}/include/salome -I${SMESH_ROOT_DIR}/include/salome - -LDFLAGS += -lSMESH $(OCC_KERNEL_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome \ - -L${GUI_ROOT_DIR}/lib/salome -L${GEOM_ROOT_DIR}/lib/salome \ - -L${SMESH_ROOT_DIR}/lib/salome - -@CONCLUDE@ diff --git a/src/HexoticPlugin/HexoticPlugin_Hexotic.cxx b/src/HexoticPlugin/HexoticPlugin_Hexotic.cxx index 1b77141..fd3d01c 100644 --- a/src/HexoticPlugin/HexoticPlugin_Hexotic.cxx +++ b/src/HexoticPlugin/HexoticPlugin_Hexotic.cxx @@ -1,34 +1,28 @@ -// HexoticPlugin : C++ implementation +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // -// Copyright (C) 2006 OPEN CASCADE, CEA/DEN, EDF R&D -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPlugin_Hexotic.cxx +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- // -// File : HexoticPlugin_Hexotic.cxx -// Author : Lioka RAZAFINDRAZAKA (CEA) -// Date : 2006/06/30 -// Project : SALOME -//============================================================================= -using namespace std; - #include "HexoticPlugin_Hexotic.hxx" #include "HexoticPlugin_Hypothesis.hxx" -// #include "HexoticPlugin_Mesher.hxx" #include "SMDS_MeshElement.hxx" #include "SMDS_MeshNode.hxx" @@ -86,6 +80,7 @@ HexoticPlugin_Hexotic::HexoticPlugin_Hexotic(int hypId, int studyId, SMESH_Gen* // _onlyUnaryInput = false; _iShape=0; _nbShape=0; + _hexoticFilesKept=false; _compatibleHypothesis.push_back("Hexotic_Parameters"); } @@ -113,10 +108,10 @@ bool HexoticPlugin_Hexotic::CheckHypothesis( SMESH_Mesh& // MESSAGE("HexoticPlugin_Hexotic::CheckHypothesis"); _hypothesis = NULL; - list::const_iterator itl; + std::list::const_iterator itl; const SMESHDS_Hypothesis* theHyp; - const list& hyps = GetUsedHypothesis(aMesh, aShape); + const std::list& hyps = GetUsedHypothesis(aMesh, aShape); int nbHyp = hyps.size(); if (!nbHyp) { aStatus = SMESH_Hypothesis::HYP_OK; @@ -126,7 +121,7 @@ bool HexoticPlugin_Hexotic::CheckHypothesis( SMESH_Mesh& itl = hyps.begin(); theHyp = (*itl); // use only the first hypothesis - string hypName = theHyp->GetName(); + std::string hypName = theHyp->GetName(); if (hypName == "Hexotic_Parameters") { _hypothesis = static_cast (theHyp); ASSERT(_hypothesis); @@ -223,15 +218,15 @@ static int findEdge(const SMDS_MeshNode* aNode, //purpose : //======================================================================= -static int getNbShape(string aFile, string aString) { +static int getNbShape(std::string aFile, std::string aString) { int number; - string aLine; - ifstream file(aFile.c_str()); + std::string aLine; + std::ifstream file(aFile.c_str()); while ( !file.eof() ) { getline( file, aLine); if ( aLine == aString ) { getline( file, aLine); - istringstream stringFlux( aLine ); + std::istringstream stringFlux( aLine ); stringFlux >> number; break; } @@ -281,26 +276,36 @@ void getShape(Mesh* mesh, Shape shape, Tab *t_Shape) { //purpose : //======================================================================= -static void printWarning(const int nbExpected, string aString, const int nbFound) { - cout << endl; - cout << "WARNING : " << nbExpected << " " << aString << " expected, Hexotic has found " << nbFound << endl; - cout << "=======" << endl; - cout << endl; +static void printWarning(const int nbExpected, std::string aString, const int nbFound) { + cout << std::endl; + cout << "WARNING : " << nbExpected << " " << aString << " expected, Hexotic has found " << nbFound << std::endl; + cout << "=======" << std::endl; + cout << std::endl; return; } +//======================================================================= +//function : removeHexoticFiles +//purpose : +//======================================================================= + +static void removeHexoticFiles(TCollection_AsciiString file_In, TCollection_AsciiString file_Out) { + OSD_File( file_In ).Remove(); + OSD_File( file_Out ).Remove(); +} + //======================================================================= //function : writeHexoticFile //purpose : //======================================================================= -static bool writeHexoticFile (ofstream & theFile, - const SMESHDS_Mesh * theMesh, - map & theSmdsToHexoticIdMap, - map & theHexoticIdToNodeMap, - const TCollection_AsciiString & Hexotic_In) { - cout << endl; - cout << "Creating Hexotic processed mesh file : " << Hexotic_In << endl; +static bool writeHexoticFile (std::ofstream& theFile, + const SMESHDS_Mesh* theMesh, + std::map & theSmdsToHexoticIdMap, + std::map & theHexoticIdToNodeMap, + const TCollection_AsciiString& Hexotic_In) { + cout << std::endl; + cout << "Creating Hexotic processed mesh file : " << Hexotic_In << std::endl; int nbShape = 0; @@ -325,24 +330,24 @@ static bool writeHexoticFile (ofstream & theFile, const SMDS_MeshNode* aNode; SMDS_NodeIteratorPtr itOnNode; - list< const SMDS_MeshElement* > faces; - list< const SMDS_MeshElement* >::iterator itListFace; + std::list< const SMDS_MeshElement* > faces; + std::list< const SMDS_MeshElement* >::iterator itListFace; const SMDS_MeshElement* aFace; SMESHDS_SubMesh* theSubMesh; - map::const_iterator itOnSmdsNode; + std::map::const_iterator itOnSmdsNode; SMDS_ElemIteratorPtr itOnSubNode, itOnSubFace; // Writing SMESH points into Hexotic File nbVertices = theMesh->NbNodes(); - theFile << "MeshVersionFormatted 1" << endl; - theFile << endl; - theFile << "Dimension" << endl; - theFile << 3 << endl; - theFile << "# Set of mesh vertices" << endl; - theFile << "Vertices" << endl; - theFile << nbVertices << endl; + theFile << "MeshVersionFormatted 1" << std::endl; + theFile << std::endl; + theFile << "Dimension" << std::endl; + theFile << 3 << std::endl; + theFile << "# Set of mesh vertices" << std::endl; + theFile << "Vertices" << std::endl; + theFile << nbVertices << std::endl; tabID = new int[nbShape]; tabNodeId = new int[ nbVertices ]; @@ -362,20 +367,20 @@ static bool writeHexoticFile (ofstream & theFile, } if ( not idFound ) tabNodeId[ aSmdsNodeID - 1 ] = dummy_1D; - theSmdsToHexoticIdMap.insert( map ::value_type( aNode->GetID(), aSmdsNodeID )); - theHexoticIdToNodeMap.insert (map ::value_type( aSmdsNodeID, aNode )); + theSmdsToHexoticIdMap.insert(std::map ::value_type( aNode->GetID(), aSmdsNodeID )); + theHexoticIdToNodeMap.insert(std::map ::value_type( aSmdsNodeID, aNode )); aSmdsNodeID++; - theFile << aNode->X() << space << aNode->Y() << space << aNode->Z() << space << dummy_1D << endl; + theFile << aNode->X() << space << aNode->Y() << space << aNode->Z() << space << dummy_1D << std::endl; } // Writing SMESH faces into Hexotic File nbTriangles = theMesh->NbFaces(); - theFile << endl; - theFile << "# Set of mesh triangles (v1,v2,v3,tag)" << endl; - theFile << "Triangles" << endl; - theFile << nbTriangles << endl; + theFile << std::endl; + theFile << "# Set of mesh triangles (v1,v2,v3,tag)" << std::endl; + theFile << "Triangles" << std::endl; + theFile << nbTriangles << std::endl; expface.ReInit(); for ( int i = 0; expface.More(); expface.Next(), i++ ) { @@ -410,18 +415,18 @@ static bool writeHexoticFile (ofstream & theFile, ASSERT( itOnSmdsNode != theSmdsToHexoticIdMap.end() ); theFile << (*itOnSmdsNode).second << space; } - theFile << dummy_2D << endl; + theFile << dummy_2D << std::endl; } } } - theFile << endl; - theFile << "End" << endl; + theFile << std::endl; + theFile << "End" << std::endl; - cout << "Processed mesh file created, it contains :" << endl; - cout << " " << nbVertices << " vertices" << endl; - cout << " " << nbTriangles << " triangles" << endl; - cout << endl; + cout << "Processed mesh file created, it contains :" << std::endl; + cout << " " << nbVertices << " vertices" << std::endl; + cout << " " << nbTriangles << " triangles" << std::endl; + cout << std::endl; delete [] tabID; delete [] tabNodeId; @@ -435,7 +440,7 @@ static bool writeHexoticFile (ofstream & theFile, //purpose : //======================================================================= -static bool readResult(string theFile, +static bool readResult(std::string theFile, SMESHDS_Mesh* theMesh, const int nbShape, const TopoDS_Shape* tabShape, @@ -447,14 +452,14 @@ static bool readResult(string theFile, TopoDS_Shape aShape; TopoDS_Vertex aVertex; - string token; + std::string token; int EndOfFile = 0, nbElem = 0, nField = 9, nbRef = 0; int aHexoticNodeID = 0, shapeID, hexoticShapeID; int IdShapeRef = 2; int *tabID, *tabRef, *nodeAssigne; bool *tabDummy, hasDummy = false; double epsilon = Precision::Confusion(); - map mapField; + std::map mapField; SMDS_MeshNode** HexoticNode; TopoDS_Shape *tabCorner, *tabEdge; @@ -464,6 +469,8 @@ static bool readResult(string theFile, for (int i=0; iShapeToIndex( tabShape[0] ); mapField["MeshVersionFormatted"] = 0; tabRef[0] = 0; tabDummy[0] = false; mapField["Dimension"] = 1; tabRef[1] = 0; tabDummy[1] = false; @@ -499,7 +506,7 @@ static bool readResult(string theFile, getShape(theMesh, TopAbs_EDGE, tabEdge); MESSAGE("Read " << theFile << " file"); - ifstream fileRes(theFile.c_str()); + std::ifstream fileRes(theFile.c_str()); ASSERT(fileRes); while ( EndOfFile == 0 ) { @@ -622,6 +629,9 @@ static bool readResult(string theFile, printWarning(nbShape, "domains", shapeAssociated); } } + else { + shapeID = tabID[0]; + } break; } } @@ -653,7 +663,7 @@ static bool readResult(string theFile, } } } - cout << endl; + cout << std::endl; delete [] tabID; delete [] tabRef; delete [] tabDummy; @@ -682,9 +692,9 @@ void HexoticPlugin_Hexotic::SetParameters(const HexoticPlugin_Hypothesis* hyp) { _hexoticSharpAngleThreshold = hyp->GetHexoticSharpAngleThreshold(); } else { - cout << endl; - cout << "WARNING : The Hexotic default parameters are taken into account" << endl; - cout << "=======" << endl; + cout << std::endl; + cout << "WARNING : The Hexotic default parameters are taken into account" << std::endl; + cout << "=======" << std::endl; _hexesMinLevel = hyp->GetDefaultHexesMinLevel(); _hexesMaxLevel = hyp->GetDefaultHexesMaxLevel(); _hexoticQuadrangles = hyp->GetDefaultHexoticQuadrangles(); @@ -780,15 +790,15 @@ bool HexoticPlugin_Hexotic::Compute(SMESH_Mesh& theMesh, SetParameters(_hypothesis); - cout << endl; - cout << "Hexotic execution..." << endl; - cout << _name << " parameters :" << endl; - cout << " " << _name << " Segments Min Level = " << _hexesMinLevel << endl; - cout << " " << _name << " Segments Max Level = " << _hexesMaxLevel << endl; - cout << " " << "Salome Quadrangles : " << (_hexoticQuadrangles ? "yes":"no") << endl; - cout << " " << "Hexotic can ignore ridges : " << (_hexoticIgnoreRidges ? "yes":"no") << endl; - cout << " " << "Hexotic authorize invalide elements : " << ( _hexoticInvalidElements ? "yes":"no") << endl; - cout << " " << _name << " Sharp angle threshold = " << _hexoticSharpAngleThreshold << " degrees" << endl; + cout << std::endl; + cout << "Hexotic execution..." << std::endl; + cout << _name << " parameters :" << std::endl; + cout << " " << _name << " Segments Min Level = " << _hexesMinLevel << std::endl; + cout << " " << _name << " Segments Max Level = " << _hexesMaxLevel << std::endl; + cout << " " << "Salome Quadrangles : " << (_hexoticQuadrangles ? "yes":"no") << std::endl; + cout << " " << "Hexotic can ignore ridges : " << (_hexoticIgnoreRidges ? "yes":"no") << std::endl; + cout << " " << "Hexotic authorize invalide elements : " << ( _hexoticInvalidElements ? "yes":"no") << std::endl; + cout << " " << _name << " Sharp angle threshold = " << _hexoticSharpAngleThreshold << " degrees" << std::endl; TCollection_AsciiString aTmpDir = getTmpDir(); TCollection_AsciiString Hexotic_In, Hexotic_Out; @@ -805,8 +815,8 @@ bool HexoticPlugin_Hexotic::Compute(SMESH_Mesh& theMesh, sharpAngle = _hexoticSharpAngleThreshold; mode = 4; - map aSmdsToHexoticIdMap; - map aHexoticIdToNodeMap; + std::map aSmdsToHexoticIdMap; + std::map aHexoticIdToNodeMap; Hexotic_In = aTmpDir + "Hexotic_In.mesh"; Hexotic_Out = aTmpDir + "Hexotic_Out.mesh"; @@ -820,13 +830,12 @@ bool HexoticPlugin_Hexotic::Compute(SMESH_Mesh& theMesh, run_Hexotic += angle + sharpAngle + minl + minLevel + maxl + maxLevel + in + Hexotic_In + out + Hexotic_Out; run_Hexotic += subdom + mode; - cout << endl; - cout << "Hexotic command : " << run_Hexotic << endl; + cout << std::endl; + cout << "Hexotic command : " << run_Hexotic << std::endl; - OSD_File( Hexotic_In ).Remove(); - OSD_File( Hexotic_Out ).Remove(); + removeHexoticFiles(Hexotic_In, Hexotic_Out); - ofstream HexoticFile (Hexotic_In.ToCString() , ios::out); + std::ofstream HexoticFile (Hexotic_In.ToCString(), std::ios::out); Ok = ( writeHexoticFile(HexoticFile, meshDS, aSmdsToHexoticIdMap, aHexoticIdToNodeMap, Hexotic_In) ); @@ -842,18 +851,18 @@ bool HexoticPlugin_Hexotic::Compute(SMESH_Mesh& theMesh, // read a result // -------------- - ifstream fileRes( Hexotic_Out.ToCString() ); + std::ifstream fileRes( Hexotic_Out.ToCString() ); if ( ! fileRes.fail() ) { Ok = readResult( Hexotic_Out.ToCString(), meshDS, _nbShape, tabShape, tabBox ); hexahedraMessage = "success"; } else { hexahedraMessage = "failed"; - cout << "Problem with Hexotic output file " << Hexotic_Out.ToCString() << endl; + cout << "Problem with Hexotic output file " << Hexotic_Out.ToCString() << std::endl; Ok = false; } - cout << "Hexahedra meshing " << hexahedraMessage << endl; - cout << endl; + cout << "Hexahedra meshing " << hexahedraMessage << std::endl; + cout << std::endl; delete [] tabShape; for (int i=0; i<_nbShape; i++) @@ -871,7 +880,7 @@ bool HexoticPlugin_Hexotic::Compute(SMESH_Mesh& theMesh, */ //============================================================================= -ostream & HexoticPlugin_Hexotic::SaveTo(ostream & save) +std::ostream& HexoticPlugin_Hexotic::SaveTo(std::ostream& save) { return save; } @@ -882,7 +891,7 @@ ostream & HexoticPlugin_Hexotic::SaveTo(ostream & save) */ //============================================================================= -istream & HexoticPlugin_Hexotic::LoadFrom(istream & load) +std::istream& HexoticPlugin_Hexotic::LoadFrom(std::istream& load) { return load; } @@ -893,7 +902,7 @@ istream & HexoticPlugin_Hexotic::LoadFrom(istream & load) */ //============================================================================= -ostream & operator << (ostream & save, HexoticPlugin_Hexotic & hyp) +std::ostream& operator << (std::ostream& save, HexoticPlugin_Hexotic& hyp) { return hyp.SaveTo( save ); } @@ -904,7 +913,7 @@ ostream & operator << (ostream & save, HexoticPlugin_Hexotic & hyp) */ //============================================================================= -istream & operator >> (istream & load, HexoticPlugin_Hexotic & hyp) +std::istream& operator >> (std::istream& load, HexoticPlugin_Hexotic& hyp) { return hyp.LoadFrom( load ); } diff --git a/src/HexoticPlugin/HexoticPlugin_Hexotic.hxx b/src/HexoticPlugin/HexoticPlugin_Hexotic.hxx index 3105290..63749c7 100644 --- a/src/HexoticPlugin/HexoticPlugin_Hexotic.hxx +++ b/src/HexoticPlugin/HexoticPlugin_Hexotic.hxx @@ -1,30 +1,26 @@ -// HexoticPlugin : C++ implementation +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // -// Copyright (C) 2006 OPEN CASCADE, CEA/DEN, EDF R&D -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPlugin_Hexotic.hxx +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- // -// File : HexoticPlugin_Hexotic.hxx -// Author : Lioka RAZAFINDRAZAKA (CEA) -// Date : 2006/06/30 -// Project : SALOME -//============================================================================= - #ifndef _HexoticPlugin_Hexotic_HXX_ #define _HexoticPlugin_Hexotic_HXX_ @@ -50,13 +46,14 @@ public: virtual bool Compute(SMESH_Mesh& aMesh, const TopoDS_Shape& aShape); - ostream & SaveTo(ostream & save); - istream & LoadFrom(istream & load); - friend ostream & operator << (ostream & save, HexoticPlugin_Hexotic & hyp); - friend istream & operator >> (istream & load, HexoticPlugin_Hexotic & hyp); + std::ostream& SaveTo(std::ostream& save); + std::istream& LoadFrom(std::istream& load); + friend std::ostream& operator << (std::ostream& save, HexoticPlugin_Hexotic& hyp); + friend std::istream& operator >> (std::istream& load, HexoticPlugin_Hexotic& hyp); protected: const HexoticPlugin_Hypothesis* _hypothesis; + private: int _iShape; int _nbShape; @@ -65,6 +62,7 @@ private: bool _hexoticQuadrangles; bool _hexoticIgnoreRidges; bool _hexoticInvalidElements; + bool _hexoticFilesKept; int _hexoticSharpAngleThreshold; SMDS_MeshNode** _tabNode; }; diff --git a/src/HexoticPlugin/HexoticPlugin_Hexotic_i.cxx b/src/HexoticPlugin/HexoticPlugin_Hexotic_i.cxx index 42c487f..1d42424 100644 --- a/src/HexoticPlugin/HexoticPlugin_Hexotic_i.cxx +++ b/src/HexoticPlugin/HexoticPlugin_Hexotic_i.cxx @@ -1,30 +1,26 @@ -// HexoticPlugin : idl implementation +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // -// Copyright (C) 2006 OPEN CASCADE, CEA/DEN, EDF R&D -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPlugin_Hexotic_i.cxx +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- // -// File : HexoticPlugin_Hexotic_i.cxx -// Author : Lioka RAZAFINDRAZAKA (CEA) -// Module : HexoticPlugin -// $Header : /home/server/cvs-PAL/HexoticPLUGIN/HexoticPLUGIN_SRC/src/HexoticPlugin_Hexotic_i.cxx,v 1.2 2006/06/01 11:43:58 jfa Exp $ - -using namespace std; #include "HexoticPlugin_Hexotic_i.hxx" #include "SMESH_Gen.hxx" #include "HexoticPlugin_Hexotic.hxx" diff --git a/src/HexoticPlugin/HexoticPlugin_Hexotic_i.hxx b/src/HexoticPlugin/HexoticPlugin_Hexotic_i.hxx index 69b9793..cacb9d2 100644 --- a/src/HexoticPlugin/HexoticPlugin_Hexotic_i.hxx +++ b/src/HexoticPlugin/HexoticPlugin_Hexotic_i.hxx @@ -1,29 +1,26 @@ -// HexoticPlugin : idl implementation +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // -// Copyright (C) 2006 OPEN CASCADE, CEA/DEN, EDF R&D -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPlugin_Hexotic_i.hxx +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- // -// File : HexoticPlugin_Hexotic_i.hxx -// Author : Lioka RAZAFINDRAZAKA (CEA) -// Module : HexoticPlugin -// $Header: /home/server/cvs-PAL/HexoticPLUGIN/HexoticPLUGIN_SRC/src/HexoticPlugin_Hexotic_i.hxx,v 1.3 2006/06/01 11:43:58 jfa Exp $ - #ifndef _HexoticPlugin_Hexotic_I_HXX_ #define _HexoticPlugin_Hexotic_I_HXX_ diff --git a/src/HexoticPlugin/HexoticPlugin_Hypothesis.cxx b/src/HexoticPlugin/HexoticPlugin_Hypothesis.cxx index b901082..b0b2f4a 100644 --- a/src/HexoticPlugin/HexoticPlugin_Hypothesis.cxx +++ b/src/HexoticPlugin/HexoticPlugin_Hypothesis.cxx @@ -1,31 +1,26 @@ -// HexoticPlugin : C++ implementation +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // -// Copyright (C) 2006 OPEN CASCADE, CEA/DEN, EDF R&D -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPlugin_Hypothesis.cxx +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- // -// File : HexoticPlugin_Hypothesis.cxx -// Author : Lioka RAZAFINDRAZAKA (CEA) -// Date : 2006/06/30 -// Project : SALOME -//============================================================================= - -using namespace std; #include #include @@ -35,7 +30,7 @@ using namespace std; */ //============================================================================= HexoticPlugin_Hypothesis::HexoticPlugin_Hypothesis (int hypId, int studyId, - SMESH_Gen * gen) + SMESH_Gen* gen) : SMESH_Hypothesis(hypId, studyId, gen), _hexesMinLevel( GetDefaultHexesMinLevel() ), _hexesMaxLevel( GetDefaultHexesMaxLevel() ), @@ -102,17 +97,25 @@ void HexoticPlugin_Hypothesis::SetHexoticSharpAngleThreshold(int theVal) { * */ //============================================================================= -ostream & HexoticPlugin_Hypothesis::SaveTo(ostream & save) +std::ostream& HexoticPlugin_Hypothesis::SaveTo(std::ostream& save) { - save << _hexesMinLevel << " " << _hexesMaxLevel; + /*save << _hexesMinLevel << " " << _hexesMaxLevel; save << " " << (int)_hexoticQuadrangles; save << " " << (int)_hexoticIgnoreRidges; save << " " << (int)_hexoticInvalidElements; save << " " << _hexoticSharpAngleThreshold; - cout <> val); -// if (isOK) -// _maxSize = val; -// else -// load.clear(ios::badbit | load.rdstate()); - -// isOK = (load >> is); -// if (isOK) -// SetFineness((Fineness) is); -// else -// load.clear(ios::badbit | load.rdstate()); - -// if (_fineness == UserDefined) -// { -// isOK = (load >> val); -// if (isOK) -// _growthRate = val; -// else -// load.clear(ios::badbit | load.rdstate()); - -// isOK = (load >> val); -// if (isOK) -// _nbSegPerEdge = val; -// else -// load.clear(ios::badbit | load.rdstate()); - -// isOK = (load >> val); -// if (isOK) -// _nbSegPerRadius = val; -// else -// load.clear(ios::badbit | load.rdstate()); -// } - -// isOK = (load >> is); -// if (isOK) -// _secondOrder = (bool) is; -// else -// load.clear(ios::badbit | load.rdstate()); - -// isOK = (load >> is); -// if (isOK) -// _optimize = (bool) is; -// else -// load.clear(ios::badbit | load.rdstate()); - return load; + //explicit inputs for future code compatibility of saved .hdf + bool isOK = true; + std::string str1,str2,str3,str4; + + //save without any whitespaces! + isOK = (load >> str1); + if (!(isOK)) { + //defaults values assumed + load.clear(std::ios::badbit | load.rdstate()); + return load; + } + int pos = 0; + int len = str1.length(); + while (pos < len) { + int found = str1.find(';',pos); + str2 = str1.substr(pos,found-pos); + int eqpos = str2.find('=',0); + str3 = str2.substr(0,eqpos); + str4 = str2.substr(eqpos+1); + pos = found + 1; + + if (str3=="hexesMinLevel") _hexesMinLevel = atoi(str4.c_str()); + if (str3=="hexesMaxLevel") _hexesMaxLevel = atoi(str4.c_str()); + if (str3=="hexoticQuadrangles") _hexoticQuadrangles = (bool) atoi(str4.c_str()); + if (str3=="hexoticIgnoreRidges") _hexoticIgnoreRidges = (bool) atoi(str4.c_str()); + if (str3=="hexoticInvalidElements") _hexoticInvalidElements = (bool) atoi(str4.c_str()); + if (str3=="hexoticSharpAngleThreshold") _hexoticSharpAngleThreshold = atoi(str4.c_str()); + } + return load; } //============================================================================= @@ -179,7 +162,7 @@ istream & HexoticPlugin_Hypothesis::LoadFrom(istream & load) * */ //============================================================================= -ostream & operator <<(ostream & save, HexoticPlugin_Hypothesis & hyp) +std::ostream& operator <<(std::ostream& save, HexoticPlugin_Hypothesis& hyp) { return hyp.SaveTo( save ); } @@ -189,7 +172,7 @@ ostream & operator <<(ostream & save, HexoticPlugin_Hypothesis & hyp) * */ //============================================================================= -istream & operator >>(istream & load, HexoticPlugin_Hypothesis & hyp) +std::istream& operator >>(std::istream& load, HexoticPlugin_Hypothesis& hyp) { return hyp.LoadFrom( load ); } @@ -204,7 +187,19 @@ istream & operator >>(istream & load, HexoticPlugin_Hypothesis & hyp) */ //================================================================================ bool HexoticPlugin_Hypothesis::SetParametersByMesh(const SMESH_Mesh* theMesh, - const TopoDS_Shape& theShape) + const TopoDS_Shape& theShape) +{ + return false; +} +//================================================================================ +/*! + * \brief Initialize my parameter values by default parameters. + * \retval bool - true if parameter values have been successfully defined + */ +//================================================================================ + +bool HexoticPlugin_Hypothesis::SetParametersByDefaults(const TDefaults& /*dflts*/, + const SMESH_Mesh* /*theMesh*/) { return false; } diff --git a/src/HexoticPlugin/HexoticPlugin_Hypothesis.hxx b/src/HexoticPlugin/HexoticPlugin_Hypothesis.hxx index b7a8b3a..90cd37e 100644 --- a/src/HexoticPlugin/HexoticPlugin_Hypothesis.hxx +++ b/src/HexoticPlugin/HexoticPlugin_Hypothesis.hxx @@ -1,31 +1,26 @@ -// HexoticPlugin : C++ implementation +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // -// Copyright (C) 2006 OPEN CASCADE, CEA/DEN, EDF R&D -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPlugin_Hypothesis.hxx +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- // -// File : HexoticPlugin_Hypothesis.hxx -// Author : Lioka RAZAFINDRAZAKA (CEA) -// Date : 2006/06/30 -// Project : SALOME -// $Header$ -//============================================================================= - #ifndef _HexoticPlugin_Hypothesis_HXX_ #define _HexoticPlugin_Hypothesis_HXX_ @@ -39,7 +34,7 @@ class HexoticPlugin_Hypothesis: public SMESH_Hypothesis { public: - HexoticPlugin_Hypothesis(int hypId, int studyId, SMESH_Gen * gen); + HexoticPlugin_Hypothesis(int hypId, int studyId, SMESH_Gen* gen); void SetHexesMinLevel(int theVal); int GetHexesMinLevel() const { return _hexesMinLevel; } @@ -69,10 +64,10 @@ public: static int GetDefaultHexoticSharpAngleThreshold(); // Persistence - virtual ostream & SaveTo(ostream & save); - virtual istream & LoadFrom(istream & load); - friend ostream & operator <<(ostream & save, HexoticPlugin_Hypothesis & hyp); - friend istream & operator >>(istream & load, HexoticPlugin_Hypothesis & hyp); + virtual std::ostream& SaveTo(std::ostream& save); + virtual std::istream& LoadFrom(std::istream& load); + friend std::ostream& operator <<(std::ostream& save, HexoticPlugin_Hypothesis& hyp); + friend std::istream& operator >>(std::istream& load, HexoticPlugin_Hypothesis& hyp); /*! * \brief Does nothing @@ -82,6 +77,12 @@ public: */ virtual bool SetParametersByMesh(const SMESH_Mesh* theMesh, const TopoDS_Shape& theShape); + /*! + * \brief Initialize my parameter values by default parameters. + * \retval bool - true if parameter values have been successfully defined + */ + virtual bool SetParametersByDefaults(const TDefaults& dflts, const SMESH_Mesh* theMesh=0); + private: int _hexesMinLevel; int _hexesMaxLevel; diff --git a/src/HexoticPlugin/HexoticPlugin_Hypothesis_i.cxx b/src/HexoticPlugin/HexoticPlugin_Hypothesis_i.cxx index 41af21a..715a7fa 100644 --- a/src/HexoticPlugin/HexoticPlugin_Hypothesis_i.cxx +++ b/src/HexoticPlugin/HexoticPlugin_Hypothesis_i.cxx @@ -1,31 +1,26 @@ -// HexoticPlugin : C++ implementation +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // -// Copyright (C) 2006 OPEN CASCADE, CEA/DEN, EDF R&D -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPlugin_Hypothesis_i.cxx +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- // -// File : HexoticPlugin_Hypothesis_i.cxx -// Author : Lioka RAZAFINDRAZAKA (CEA) -// Date : 2006/06/30 -// Project : SALOME -//============================================================================= -using namespace std; - #include "HexoticPlugin_Hypothesis_i.hxx" #include "SMESH_Gen.hxx" #include "SMESH_PythonDump.hxx" diff --git a/src/HexoticPlugin/HexoticPlugin_Hypothesis_i.hxx b/src/HexoticPlugin/HexoticPlugin_Hypothesis_i.hxx index 43d6689..d680e69 100644 --- a/src/HexoticPlugin/HexoticPlugin_Hypothesis_i.hxx +++ b/src/HexoticPlugin/HexoticPlugin_Hypothesis_i.hxx @@ -1,30 +1,26 @@ -// HexoticPlugin : C++ implementation +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // -// Copyright (C) 2006 OPEN CASCADE, CEA/DEN, EDF R&D -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPlugin_Hypothesis_i.hxx +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- // -// File : HexoticPlugin_Hypothesis_i.hxx -// Author : Lioka RAZAFINDRAZAKA (CEA) -// Date : 2006/06/30 -// Project : SALOME -//============================================================================= - #ifndef _HexoticPlugin_Hypothesis_i_HXX_ #define _HexoticPlugin_Hypothesis_i_HXX_ diff --git a/src/HexoticPlugin/HexoticPlugin_i.cxx b/src/HexoticPlugin/HexoticPlugin_i.cxx index 96a1e89..b94af39 100644 --- a/src/HexoticPlugin/HexoticPlugin_i.cxx +++ b/src/HexoticPlugin/HexoticPlugin_i.cxx @@ -1,32 +1,26 @@ -// SMESH HexoticPlugin : implementaion of SMESH idl descriptions +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// --- +// File : HexoticPlugin_i.cxx +// Author : Lioka RAZAFINDRAZAKA (CEA) +// --- // -// File : HexoticPlugin_i.cxx -// Author : Lioka RAZAFINDRAZAKA (CEA) -// Module : SMESH -// $Header: /home/server/cvs-PAL/HexoticPLUGIN/HexoticPLUGIN_SRC/src/HexoticPlugin_i.cxx,v 1.3 2006/06/01 11:43:58 jfa Exp $ - -using namespace std; #include "SMESH_Hypothesis_i.hxx" #include "utilities.h" diff --git a/src/HexoticPlugin/Makefile.am b/src/HexoticPlugin/Makefile.am new file mode 100644 index 0000000..087e61c --- /dev/null +++ b/src/HexoticPlugin/Makefile.am @@ -0,0 +1,59 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : Makefile.am +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# +include $(top_srcdir)/adm_local/unix/make_common_starter.am + +# header files +salomeinclude_HEADERS = + +# Libraries targets +lib_LTLIBRARIES = libHexoticEngine.la + +dist_libHexoticEngine_la_SOURCES = \ + HexoticPlugin_Hexotic.hxx \ + HexoticPlugin_Hexotic.cxx \ + HexoticPlugin_Hexotic_i.hxx \ + HexoticPlugin_Hexotic_i.cxx \ + HexoticPlugin_Hypothesis.hxx \ + HexoticPlugin_Hypothesis.cxx \ + HexoticPlugin_Hypothesis_i.hxx \ + HexoticPlugin_Hypothesis_i.cxx \ + HexoticPlugin_i.cxx + +libHexoticEngine_la_CPPFLAGS = \ + -I$(top_builddir)/idl \ + -I$(top_builddir)/salome_adm/unix \ + $(SMESH_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(CAS_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(MED_CXXFLAGS) \ + $(GEOM_CXXFLAGS) + +libHexoticEngine_la_LDFLAGS = \ + ../../idl/libSalomeIDLHexoticPLUGIN.la \ + $(SMESH_LDFLAGS) -lSMESHimpl -lSMESHEngine -lStdMeshersEngine \ + $(KERNEL_LDFLAGS) -lSalomeGenericObj diff --git a/src/HexoticPlugin/Makefile.in b/src/HexoticPlugin/Makefile.in deleted file mode 100644 index 8a3fac3..0000000 --- a/src/HexoticPlugin/Makefile.in +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS, L3S, LJLL, MENSI -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ -# -# -* Makefile *- -# -# Author : Lioka RAZAFINDRAZAKA (CEA) -# Module : HexoticPLUGIN -# Date : 2006/06/30 -# -# - -# source path -top_srcdir=@top_srcdir@ -top_builddir=../.. -srcdir=@srcdir@ -VPATH=.:@srcdir@:@top_srcdir@/idl:$(top_builddir)/idl:${KERNEL_ROOT_DIR}/idl/salome:${GUI_ROOT_DIR}/idl/salome:${GEOM_ROOT_DIR}/idl/salome:${SMESH_ROOT_DIR}/idl/salome:${MED_ROOT_DIR}/idl/salome - -@COMMENCE@ - -LIB_SRC = \ - HexoticPlugin_Hexotic.cxx \ - HexoticPlugin_Hexotic_i.cxx \ - HexoticPlugin_Hypothesis.cxx \ - HexoticPlugin_Hypothesis_i.cxx \ - HexoticPlugin_i.cxx - -LIB_SERVER_IDL = HexoticPlugin_Algorithm.idl - -LIB_CLIENT_IDL = \ - SALOME_Component.idl \ - SALOME_Comm.idl \ - GEOM_Gen.idl \ - MED.idl - -# Libraries targets -LIB = libHexoticEngine.la - -@CONCLUDE@ diff --git a/src/Makefile.am b/src/Makefile.am new file mode 100644 index 0000000..5354ba3 --- /dev/null +++ b/src/Makefile.am @@ -0,0 +1,32 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# --- +# File : Makefile.am +# Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com) +# --- +# +include $(top_srcdir)/adm_local/unix/make_common_starter.am + +SUBDIRS = HexoticPlugin + +if HEXOTICPLUGIN_ENABLE_GUI + SUBDIRS += GUI +endif + +DIST_SUBDIRS = HexoticPlugin GUI diff --git a/src/Makefile.in b/src/Makefile.in deleted file mode 100644 index 8514b42..0000000 --- a/src/Makefile.in +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org -# -# -# -# File : Makefile.in -# Author : Lioka RAZAFINDRAZAKA (CEA) -# Module : SMESH - -top_srcdir=@top_srcdir@ -top_builddir=.. -srcdir=@srcdir@ -VPATH=.:@srcdir@ - -@COMMENCE@ - -SUBDIRS = HexoticPlugin GUI - -@MODULE@