Salome HOME
Salome tutorial V6_2_0
authorjfa <jfa@opencascade.com>
Thu, 10 Mar 2011 10:27:15 +0000 (10:27 +0000)
committerjfa <jfa@opencascade.com>
Thu, 10 Mar 2011 10:27:15 +0000 (10:27 +0000)
27 files changed:
.nfs00000000008c4cdf000000f4 [new file with mode: 0644]
ATOMICGUI.cxx [new file with mode: 0644]
ATOMICGUI.h [new file with mode: 0644]
Makefile.am [new file with mode: 0644]
SALOME_Tutorial.doc [new file with mode: 0644]
atomic_env_build.sh [new file with mode: 0644]
build_configure [new file with mode: 0644]
c-01.tar.gz [new file with mode: 0644]
c-02.tar.gz [new file with mode: 0644]
c-03.tar.gz [new file with mode: 0644]
c-04.tar.gz [new file with mode: 0644]
check_gd.m4 [new file with mode: 0644]
configure.ac [new file with mode: 0644]
light-00.tar.gz [new file with mode: 0644]
light-01.tar.gz [new file with mode: 0644]
light-02.tar.gz [new file with mode: 0644]
light-03.tar.gz [new file with mode: 0644]
light-04.tar.gz [new file with mode: 0644]
light-05.tar.gz [new file with mode: 0644]
light-06.tar.gz [new file with mode: 0644]
light-07.tar.gz [new file with mode: 0644]
light-08.tar.gz [new file with mode: 0644]
light-09.tar.gz [new file with mode: 0644]
py-01.tar.gz [new file with mode: 0644]
py-02.tar.gz [new file with mode: 0644]
py-03.tar.gz [new file with mode: 0644]
py-04.tar.gz [new file with mode: 0644]

diff --git a/.nfs00000000008c4cdf000000f4 b/.nfs00000000008c4cdf000000f4
new file mode 100644 (file)
index 0000000..16e1615
Binary files /dev/null and b/.nfs00000000008c4cdf000000f4 differ
diff --git a/ATOMICGUI.cxx b/ATOMICGUI.cxx
new file mode 100644 (file)
index 0000000..1afb1ee
--- /dev/null
@@ -0,0 +1,193 @@
+//  Copyright (C) 2007-2010  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  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
+
+using namespace std;
+
+#include "ATOMICGUI.h"
+
+#include "ATOMICGUI_DataModel.h"
+#include "ATOMICGUI_DataObject.h"
+#include "ATOMICGUI_AddAtomDlg.h"
+
+#include <LightApp_Application.h>
+#include <LightApp_DataOwner.h>
+#include <LightApp_SelectionMgr.h>
+
+#include <SUIT_ResourceMgr.h>
+#include <SUIT_Session.h>
+#include <SUIT_Desktop.h>
+
+#include <qaction.h>
+#include <qmenu.h>
+
+/*! Constructor */
+ATOMICGUI::ATOMICGUI()
+: LightApp_Module( "ATOMICGUI" )
+{
+}
+
+/*! Initialization funciton.  Called only once on first activation of GUI module.  */
+void ATOMICGUI::initialize ( CAM_Application* app )
+{
+  LightApp_Module::initialize( app );// call parent's implementation
+
+  SUIT_Desktop* parent = application()->desktop();
+  SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr();
+
+  // create actions
+  createAction( agCreateMol, tr("TOP_CREATE_MOL"), resMgr->loadPixmap("ATOMIC", tr("ICON_MOLECULE")),
+                tr("MEN_CREATE_MOL"), tr("STB_CREATE_MOL"), 0, parent, false, this, SLOT(onOperation()) );
+  createAction( agAddAtom,   tr("TOP_ADD_ATOM"),   resMgr->loadPixmap("ATOMIC", tr("ICON_ATOM")),
+                tr("MEN_ADD_ATOM"),   tr("STB_ADD_ATOM"),   0, parent, false, this, SLOT(onOperation()) );
+
+  // init popup menus
+  int aAtomicMnu = createMenu( tr( "MEN_ATOMIC" ), -1, -1, 50 );
+  createMenu( agCreateMol, aAtomicMnu, 10 );
+  createMenu( separator(), aAtomicMnu, -1, 10 );
+  createMenu( agAddAtom,   aAtomicMnu, 10 );
+
+  // create toolbar
+  int tbId = createTool( tr( "MEN_ATOMIC" ) );
+  createTool( agCreateMol, tbId );
+  createTool( agAddAtom,   tbId );
+}
+
+/*! Returns default icon of a component. */
+QString ATOMICGUI::iconName() const
+{
+  return QObject::tr( "ICON_ATOMIC" );
+}
+
+/*! Returns list of windows required for this GUI module. */
+void ATOMICGUI::windows ( QMap<int, int>& aMap ) const
+{
+  aMap.insert( LightApp_Application::WT_ObjectBrowser, Qt::LeftDockWidgetArea );
+}
+
+/*! Returns list of entities of selected objects. */
+void ATOMICGUI::selected( QStringList& entries, const bool multiple )
+{
+  LightApp_SelectionMgr* mgr = getApp()->selectionMgr();
+  if( !mgr )
+    return;
+
+  SUIT_DataOwnerPtrList anOwnersList;
+  mgr->selected( anOwnersList );
+
+  for ( int i = 0; i < anOwnersList.size(); i++ )
+  {
+    const LightApp_DataOwner* owner = dynamic_cast<const LightApp_DataOwner*>( anOwnersList[ i ].get() );
+    QStringList es = owner->entry().split( "_" );
+    if ( es.count() > 1 && es[ 0 ] == "ATOMICGUI" && es[ 1 ] != "root" )
+    {
+      entries.append( owner->entry() );
+      if( !multiple )
+        break;
+    }
+  }
+}
+
+/*! Instantiation of a custom Data Model. */
+CAM_DataModel* ATOMICGUI::createDataModel()
+{
+  return new ATOMICGUI_DataModel( this );
+}
+
+/*! Activation function. Called on every activation of a GUI module. */
+bool ATOMICGUI::activateModule ( SUIT_Study* study )
+{
+  bool isDone = LightApp_Module::activateModule( study );
+  if ( !isDone ) return false;
+
+  setMenuShown( true );
+  setToolShown( true );
+
+  return isDone;
+}
+
+/*! Deactivation function. Called on every deactivation of a GUI module. */
+bool ATOMICGUI::deactivateModule ( SUIT_Study* study )
+{
+  setMenuShown( false );
+  setToolShown( false );
+
+  return LightApp_Module::deactivateModule( study );
+}
+
+/*! slot connected to all functions of the component (create molecule, add atom, etc.) */
+void ATOMICGUI::onOperation()
+{
+  if( sender() && sender()->inherits( "QAction" ) )
+  {
+    int id = actionId( ( QAction* )sender() );
+    if ( id == agCreateMol ) {
+      ATOMICGUI_DataModel* dm = dynamic_cast<ATOMICGUI_DataModel*>( dataModel() );
+      if ( dm ) {
+        dm->createMolecule();
+        getApp()->updateObjectBrowser();
+      }
+    }
+    else if ( id == agAddAtom ) {
+      QStringList entries;
+      selected( entries, false );
+      ATOMICGUI_AddAtomDlg dlg ( getApp()->desktop() );
+      int res = dlg.exec();
+      ATOMICGUI_DataModel* dm = dynamic_cast<ATOMICGUI_DataModel*>( dataModel() );
+      if( dm && res == QDialog::Accepted && dlg.acceptData( entries ) ) {
+        QString name;
+        double x, y, z;
+        dlg.data( name, x, y, z );
+        dm->addAtom( entries.first(), name, x, y, z );
+        getApp()->updateObjectBrowser();
+      }
+    }
+  }
+}
+
+/*! Called on popup menu request by LightApp_Application. */
+void ATOMICGUI::contextMenuPopup( const QString& client, QMenu* menu, QString& /*title*/ )
+{
+  if ( client == "ObjectBrowser" ) {
+    QStringList entries;
+    selected( entries, false );
+    if ( entries.size() ) {
+      QStringList es = entries.first().split( "_" );
+      if ( es.count() == 2 && es[ 0 ] == "ATOMICGUI" ) { // selected object belongs to ATOMICGUI
+                                                         // and it is a molecule object
+        menu->addAction(action( agAddAtom ));
+      }
+    }
+  }
+}
+
+
+#if defined(WNT)
+#define ATOMICGUI_EXPORT __declspec(dllexport)
+#else   // WNT
+#define ATOMICGUI_EXPORT
+#endif  // WNT
+
+/*! GUI module instantiation function */
+extern "C" {
+  ATOMICGUI_EXPORT CAM_Module* createModule() {
+    return new ATOMICGUI();
+  }
+}
diff --git a/ATOMICGUI.h b/ATOMICGUI.h
new file mode 100644 (file)
index 0000000..e59c63d
--- /dev/null
@@ -0,0 +1,59 @@
+//  Copyright (C) 2007-2010  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  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
+
+#if !defined(ATOMICGUI_H)
+#define ATOMICGUI_H
+
+#include <LightApp_Module.h>
+
+/*!
+ * Class       : ATOMICGUI
+ * Description : GUI module class for ATOMIC component
+ */
+class ATOMICGUI: public LightApp_Module
+{
+  Q_OBJECT
+  enum { agCreateMol,  agAddAtom };
+
+public:
+  ATOMICGUI();
+
+  virtual void           initialize ( CAM_Application* );
+  virtual QString        iconName () const;
+
+  virtual void           windows ( QMap<int, int>& ) const;
+
+  void                   selected( QStringList&, const bool );
+
+  void                   contextMenuPopup( const QString& client, QMenu* menu, QString& title );
+
+protected:
+  virtual CAM_DataModel* createDataModel();
+
+public slots:
+  virtual bool           activateModule   ( SUIT_Study* );
+  virtual bool           deactivateModule ( SUIT_Study* );
+
+private slots:
+  void                   onOperation();
+};
+
+#endif // ATOMICGUI_H
diff --git a/Makefile.am b/Makefile.am
new file mode 100644 (file)
index 0000000..bca8159
--- /dev/null
@@ -0,0 +1,52 @@
+#  Copyright (C) 2007-2010  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  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
+
+include $(top_srcdir)/adm_local/unix/make_common_starter.am
+
+# Library target
+lib_LTLIBRARIES = libATOMIC.la
+
+# Library sources
+dist_libATOMIC_la_SOURCES =    \
+       ATOMICGUI.h             \
+       ATOMICGUI.cxx
+
+# MOC pre-processing
+MOC_FILES = \
+       ATOMICGUI_moc.cxx
+
+nodist_libATOMIC_la_SOURCES = $(MOC_FILES)
+
+# additionnal compilation flags
+libATOMIC_la_CPPFLAGS = \
+       $(QT_INCLUDES) \
+       $(VTK_INCLUDES) \
+       $(CAS_CPPFLAGS) \
+       $(PYTHON_INCLUDES) \
+       $(GUI_CXXFLAGS)
+
+# additionnal linkage flags
+libATOMIC_la_LDFLAGS = $(GUI_LDFLAGS) -lLightApp $(GD_LIBS)
+
+# resources files
+nodist_salomeres_DATA = \
+        ATOMIC_images.qm \
+        ATOMIC_msg_en.qm
diff --git a/SALOME_Tutorial.doc b/SALOME_Tutorial.doc
new file mode 100644 (file)
index 0000000..404c300
Binary files /dev/null and b/SALOME_Tutorial.doc differ
diff --git a/atomic_env_build.sh b/atomic_env_build.sh
new file mode 100644 (file)
index 0000000..f11816b
--- /dev/null
@@ -0,0 +1,25 @@
+#  Copyright (C) 2007-2010  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  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
+
+export ATOMIC_TUTORIAL_DIR=<where the atomic is located>
+export ATOMIC_SRC_DIR=${ATOMIC_TUTORIAL_DIR}/ATOMIC_SRC
+export ATOMIC_BUILD_DIR=${ATOMIC_TUTORIAL_DIR}/ATOMIC_BUILD
+export ATOMIC_ROOT_DIR=${ATOMIC_TUTORIAL_DIR}/ATOMIC
diff --git a/build_configure b/build_configure
new file mode 100644 (file)
index 0000000..345d8ca
--- /dev/null
@@ -0,0 +1,97 @@
+#!/bin/bash
+
+#  Copyright (C) 2007-2010  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  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
+
+ORIG_DIR=`pwd`
+CONF_DIR=`echo $0 | sed -e "s,[^/]*$,,;s,/$,,;s,^$,.,"`
+
+# ____________________________________________________________________
+# Test if the KERNEL_ROOT_DIR is set correctly
+
+if test ! -d "${KERNEL_ROOT_DIR}"; then
+    echo "failed : KERNEL_ROOT_DIR variable is not correct !"
+    exit
+fi
+
+# ____________________________________________________________________
+# 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
+fi
+
+cd ${CONF_DIR}
+ABS_CONF_DIR=`pwd`
+
+# ____________________________________________________________________
+# aclocal creates the aclocal.m4 file from the standard macro and the
+# custom macro embedded in the directory adm_local/unix/config_files
+# and KERNEL config_files directory.
+# output:
+#   aclocal.m4
+#   autom4te.cache (directory)
+echo "======================================================= aclocal"
+
+aclocal -I adm_local/unix/config_files \
+        -I ${GUI_ROOT_DIR}/adm_local/unix/config_files \
+        -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files \
+        -I ${GEOM_ROOT_DIR}/adm_local/unix/config_files || exit 1
+
+# ____________________________________________________________________
+# 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(<mydir>) tag (see configure.ac).
+# output:
+#   adm_local/unix/config_files/config.guess
+#   adm_local/unix/config_files/config.sub
+#   adm_local/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(<mydir>) tag (see configure.ac). This step also
+# creates the Makefile.in files from the Makefile.am files.
+# output:
+#   adm_local/unix/config_files/compile
+#   adm_local/unix/config_files/depcomp
+#   adm_local/unix/config_files/install-sh
+#   adm_local/unix/config_files/missing
+#   adm_local/unix/config_files/py-compile
+#   Makefile.in (from Makefile.am)
+echo "====================================================== automake"
+
+automake --copy --gnu --add-missing
diff --git a/c-01.tar.gz b/c-01.tar.gz
new file mode 100644 (file)
index 0000000..d5c0a2d
Binary files /dev/null and b/c-01.tar.gz differ
diff --git a/c-02.tar.gz b/c-02.tar.gz
new file mode 100644 (file)
index 0000000..8a22f58
Binary files /dev/null and b/c-02.tar.gz differ
diff --git a/c-03.tar.gz b/c-03.tar.gz
new file mode 100644 (file)
index 0000000..6b5d0cf
Binary files /dev/null and b/c-03.tar.gz differ
diff --git a/c-04.tar.gz b/c-04.tar.gz
new file mode 100644 (file)
index 0000000..63a3653
Binary files /dev/null and b/c-04.tar.gz differ
diff --git a/check_gd.m4 b/check_gd.m4
new file mode 100644 (file)
index 0000000..1a434e4
--- /dev/null
@@ -0,0 +1,61 @@
+#  Copyright (C) 2007-2010  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  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
+
+AC_DEFUN([CHECK_GDLIB],[
+AC_REQUIRE([AC_PROG_CC])
+AC_REQUIRE([AC_PROG_CPP])
+AC_REQUIRE([AC_LINKER_OPTIONS])
+
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+
+AC_CHECKING(for gd library)
+
+gd_ok=no
+
+# check gd.h header
+AC_CHECK_HEADER(gd.h, gd_ok=yes, gd_ok=no)
+
+if test "x$gd_ok" = "xyes"; then
+  # check gd library
+  AC_MSG_CHECKING(linking with libgd.so)
+  LIBS_old=$LIBS
+  LIBS="$LIBS -lgd"
+  AC_TRY_LINK([#include <gd.h>],
+              [gdImagePtr image = gdImageCreate(10,10);],
+              gd_ok=yes,
+              gd_ok=no)
+  LIBS=$LIBS_old
+  AC_MSG_RESULT(done)
+fi
+
+if test "x$gd_ok" = "xno"; then
+  AC_MSG_WARN(gd library is not installed!)
+else
+  GD_LIBS="-lgd"
+fi
+
+AC_SUBST(GD_LIBS)
+
+AC_MSG_RESULT(for gd: $gd_ok)
+
+AC_LANG_RESTORE
+])
diff --git a/configure.ac b/configure.ac
new file mode 100644 (file)
index 0000000..400431c
--- /dev/null
@@ -0,0 +1,296 @@
+#  Copyright (C) 2007-2010  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  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
+
+AC_INIT([Salome2 Project ATOMIC module], [0.3.0], [webmaster.salome@opencascade.com], [SalomeATOMIC])
+AC_CONFIG_AUX_DIR(adm_local/unix/config_files)
+AC_CANONICAL_HOST
+AC_CANONICAL_TARGET
+AM_INIT_AUTOMAKE([-Wno-portability])
+
+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=atomic
+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
+
+AC_CHECK_PROG(SHELL,sh)
+AC_SUBST(SHELL)
+
+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
+AC_LOCAL_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
+
+echo
+echo ---------------------------------------------
+echo testing C/C++
+echo ---------------------------------------------
+echo
+
+cc_ok=no
+dnl inutil car libtool
+dnl AC_PROG_CC
+AC_PROG_CXX
+AC_CXX_WARNINGS
+AC_CXX_TEMPLATE_OPTIONS
+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 Library librt : for alpha/osf
+AC_CHECK_LIB(rt,nanosleep)
+
+dnl
+dnl Check if we use std iostream by default or if we must add
+dnl a compiler directive for that
+dnl
+
+AC_CXX_USE_STD_IOSTREAM
+
+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 linker
+dnl ---------------------------------------------
+dnl
+
+AC_LINKER_OPTIONS
+
+dnl
+dnl ---------------------------------------------
+dnl testing WITHIHM
+dnl ---------------------------------------------
+dnl
+
+CHECK_WITHIHM
+
+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)
+
+echo
+echo ---------------------------------------------
+echo testing threads
+echo ---------------------------------------------
+echo
+
+ENABLE_PTHREADS
+
+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 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 gd library
+echo ---------------------------------------------
+echo
+
+CHECK_GDLIB
+
+echo
+echo ---------------------------------------------
+echo Testing Kernel
+echo ---------------------------------------------
+echo
+
+CHECK_KERNEL
+
+echo
+echo ---------------------------------------------
+echo Testing GUI
+echo ---------------------------------------------
+echo
+
+CHECK_SALOME_GUI
+
+echo
+echo ---------------------------------------------
+echo Summary
+echo ---------------------------------------------
+echo
+
+echo Configure
+variables="cc_ok lex_yacc_ok python_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok occ_ok doxygen_ok graphviz_ok gd_ok Kernel_ok SalomeGUI_ok"
+
+for var in $variables
+do
+   printf "   %10s : " `echo \$var | sed -e "s,_ok,,"`
+   eval echo \$$var
+done
+
+dnl We don't need to say when we re entering directories if we re using
+dnl GNU make because make does it for us.
+if test "X$GMAKE" = "Xyes"; then
+   AC_SUBST(SETX) SETX=":"
+else
+   AC_SUBST(SETX) SETX="set -x"
+fi
+
+AC_OUTPUT_COMMANDS([ \
+        chmod +x ./bin/* \
+])
+
+echo
+echo ---------------------------------------------
+echo generating Makefiles and configure files
+echo ---------------------------------------------
+echo
+
+# This list is initiated using autoscan and must be updated manually
+# when adding a new file <filename>.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([ \
+  adm_local/Makefile \
+  adm_local/unix/Makefile \
+  adm_local/unix/config_files/Makefile \
+  bin/VERSION \
+  bin/Makefile \
+  resources/Makefile \
+  src/Makefile \
+  src/ATOMICGUI/Makefile \
+  ATOMIC_version.h \
+  Makefile \
+])
diff --git a/light-00.tar.gz b/light-00.tar.gz
new file mode 100644 (file)
index 0000000..68878c5
Binary files /dev/null and b/light-00.tar.gz differ
diff --git a/light-01.tar.gz b/light-01.tar.gz
new file mode 100644 (file)
index 0000000..6570b96
Binary files /dev/null and b/light-01.tar.gz differ
diff --git a/light-02.tar.gz b/light-02.tar.gz
new file mode 100644 (file)
index 0000000..7a0ffa1
Binary files /dev/null and b/light-02.tar.gz differ
diff --git a/light-03.tar.gz b/light-03.tar.gz
new file mode 100644 (file)
index 0000000..29c7f44
Binary files /dev/null and b/light-03.tar.gz differ
diff --git a/light-04.tar.gz b/light-04.tar.gz
new file mode 100644 (file)
index 0000000..070677b
Binary files /dev/null and b/light-04.tar.gz differ
diff --git a/light-05.tar.gz b/light-05.tar.gz
new file mode 100644 (file)
index 0000000..d85745a
Binary files /dev/null and b/light-05.tar.gz differ
diff --git a/light-06.tar.gz b/light-06.tar.gz
new file mode 100644 (file)
index 0000000..8f1d7b7
Binary files /dev/null and b/light-06.tar.gz differ
diff --git a/light-07.tar.gz b/light-07.tar.gz
new file mode 100644 (file)
index 0000000..c066680
Binary files /dev/null and b/light-07.tar.gz differ
diff --git a/light-08.tar.gz b/light-08.tar.gz
new file mode 100644 (file)
index 0000000..9c6811d
Binary files /dev/null and b/light-08.tar.gz differ
diff --git a/light-09.tar.gz b/light-09.tar.gz
new file mode 100644 (file)
index 0000000..0cfc88e
Binary files /dev/null and b/light-09.tar.gz differ
diff --git a/py-01.tar.gz b/py-01.tar.gz
new file mode 100644 (file)
index 0000000..ffc6977
Binary files /dev/null and b/py-01.tar.gz differ
diff --git a/py-02.tar.gz b/py-02.tar.gz
new file mode 100644 (file)
index 0000000..187ac4a
Binary files /dev/null and b/py-02.tar.gz differ
diff --git a/py-03.tar.gz b/py-03.tar.gz
new file mode 100644 (file)
index 0000000..17eed4c
Binary files /dev/null and b/py-03.tar.gz differ
diff --git a/py-04.tar.gz b/py-04.tar.gz
new file mode 100644 (file)
index 0000000..8397ce4
Binary files /dev/null and b/py-04.tar.gz differ