-// Copyright (C) 2005 CEA/DEN, EDF R&D
+// Copyright (C) 2007-2013 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
+// 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.
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
+
#ifndef __HELLO_GEN__
#define __HELLO_GEN__
+
/*!
- \defgroup EXAMPLES SALOME EXAMPLES components
- */
+ \defgroup EXAMPLES SALOME EXAMPLES components
+*/
#include "SALOME_Component.idl"
#include "SALOME_Exception.idl"
-
-/*! \ingroup EXAMPLES
-
-This package contains the interface HELLO_ORB used
-for %HELLO component as an example in %SALOME application.
+/*!
+ \ingroup EXAMPLES
+ This package contains the interface HELLO_ORB used
+ for %HELLO component as an example in %SALOME application.
*/
module HELLO_ORB
{
- /*! \brief Interface of the %HELLO component
+ typedef sequence<SALOMEDS::SObject> object_list;
+
+ /*!
+ \brief Operation result codes
+ */
+ enum status {
+ OP_OK, //!< OK result
+ OP_ERR_ALREADY_MET, //!< ERROR: already met
+ OP_ERR_DID_NOT_MEET, //!< ERROR: did not meet yet
+ OP_ERR_UNKNOWN //!< ERROR: other problems
+ };
+
+ /*!
+ \brief Interface of the %HELLO component
*/
- interface HELLO_Gen : Engines::Component
+ interface HELLO_Gen : Engines::EngineComponent
{
- /*!
- Set the Name and return the string concatenation of "hello, " and the given name.
- */
- string makeBanner(in string name)
- raises (SALOME::SALOME_Exception);
+ /*!
+ \brief Say hello to \a name
+ \param study SALOME study
+ \param name person's name
+ \return operation status
+ */
+ status hello( in SALOMEDS::Study study, in string name )
+ raises (SALOME::SALOME_Exception);
+
+ /*!
+ \brief Say goodbye to \a name
+ \param study SALOME study
+ \param name person's name
+ \return operation status
+ */
+ status goodbye( in SALOMEDS::Study study, in string name )
+ raises (SALOME::SALOME_Exception);
+
+ /*!
+ \brief Copy or move objects to the specified position
+
+ This function is used in the drag-n-drop functionality.
+
+ \param what objects being copied/moved
+ \param where parent object where objects are copied/moved to
+ \param row position in the parent object's children list at which objects are copied/moved
+ \param isCopy \c true if object are copied or \c false otherwise
+ */
+ void copyOrMove( in object_list what, in SALOMEDS::SObject where, in long row, in boolean isCopy );
};
};
#endif
-