Salome HOME
Bug #168: filter for invalid polyline.
[modules/hydro.git] / src / HYDROData / HYDROData_Profile.h
index 48c944b6fb26b47b5e8ed1706368cea0a0085611..3c56846fa142f933433b07a7cce68611d22c3feb 100644 (file)
@@ -189,24 +189,29 @@ public:
    *  - georeferenced presentation of profile (3 points in line X,Y,Z)
    * Create as many objects as many profiles in the file are defined.
    * \param theFileName the path to file
-   * \return \c true if file has been successfully read
+   * \return \c number of successfully imported profiles
    */
-  HYDRODATA_EXPORT static bool ImportFromFile( const Handle(HYDROData_Document)& theDoc,
-                                               const TCollection_AsciiString&    theFileName );
+  HYDRODATA_EXPORT static int ImportFromFile( const Handle(HYDROData_Document)& theDoc,
+                                               const TCollection_AsciiString&    theFileName,
+                                               NCollection_Sequence<int>&        theBadProfilesIds );
 
   /**
    * Imports Profile data from file.
    * \param theFileName the path to file
+   * \param theIsRead set to true if at least one non empty string was read from file
    * \return \c true if file has been successfully read
    */
-  HYDRODATA_EXPORT virtual bool ImportFromFile( const TCollection_AsciiString& theFileName );
+  HYDRODATA_EXPORT virtual bool ImportFromFile( const TCollection_AsciiString& theFileName,
+                                                bool*                          theIsRead = 0 );
 
   /**
    * Imports Profile data from file. 
    * \param theFile file to read
+   * \param theIsRead set to true if at least one non empty string was read from file
    * \return \c true if file has been successfully read
    */
-  HYDRODATA_EXPORT virtual bool ImportFromFile( OSD_File& theFile );
+  HYDRODATA_EXPORT virtual bool ImportFromFile( OSD_File& theFile,
+                                                bool*      theIsRead = 0 );
 
 protected:
 
@@ -235,12 +240,12 @@ protected:
    * Creates new object in the internal data structure. Use higher level objects 
    * to create objects with real content.
    */
-  HYDROData_Profile();
+  HYDRODATA_EXPORT HYDROData_Profile();
 
   /**
    * Destructs properties of the object and object itself, removes it from the document.
    */
-  ~HYDROData_Profile();
+  HYDRODATA_EXPORT ~HYDROData_Profile();
 };
 
 #endif