Version: 8.3.0
Salome_file_i Class Reference

A class to manage file transfer in SALOME. More...

#include <Salome_file_i.hxx>

Inheritance diagram for Salome_file_i:

Public Member Functions

 Salome_file_i ()
 Default constructor,. More...
 
virtual ~Salome_file_i ()
 Destructor. More...
 
virtual void load (const char *hdf5_file)
 CORBA method. More...
 
virtual void save (const char *hdf5_file)
 CORBA method. More...
 
virtual void save_all (const char *hdf5_file)
 CORBA method. More...
 
virtual void setLocalFile (const char *comp_file_name)
 CORBA method. More...
 
virtual void setDistributedFile (const char *comp_file_name)
 CORBA method. More...
 
virtual void connect (Engines::Salome_file_ptr source_Salome_file)
 CORBA method. More...
 
virtual void connectDistributedFile (const char *file_name, Engines::Salome_file_ptr source_Salome_file)
 CORBA method. More...
 
virtual void setDistributedSourceFile (const char *file_name, const char *source_file_name)
 CORBA method. More...
 
virtual void recvFiles ()
 CORBA method. More...
 
virtual void removeFile (const char *file_name)
 CORBA method. More...
 
virtual void removeFiles ()
 CORBA method. More...
 
virtual void setContainer (Engines::Container_ptr container)
 
virtual Engines::filesgetFilesInfos ()
 CORBA method. More...
 
virtual Engines::filegetFileInfos (const char *file_name)
 CORBA method. More...
 
virtual Engines::SfStategetSalome_fileState ()
 CORBA method. More...
 
virtual CORBA::Long open (const char *file_name)
 CORBA method: try to open the file given. More...
 
virtual void close (CORBA::Long fileId)
 CORBA method: close the file associated to the fileId given at open. More...
 
virtual Engines::fileBlockgetBlock (CORBA::Long fileId)
 
CORBA::Long openW (const char *fileName)
 open the given file in write mode (for copy) More...
 
void putBlock (CORBA::Long fileId, const Engines::fileBlock &block)
 put a data block for copy into a file More...
 
virtual PortableServer::POA_ptr _default_POA ()
 Get default POA for the servant object. More...
 
virtual void Register ()
 Increment reference counter. More...
 
virtual void UnRegister ()
 Decrement reference counter. More...
 
virtual void Destroy ()
 Decrement reference counter. More...
 

Protected Types

typedef std::map< int, FILE * > _t_fileAccess
 
typedef std::map< std::string,
Engines::file
_t_fileManaged
 
typedef std::map< std::string,
Engines::Salome_file_var > 
_t_fileDistributedSource
 

Protected Member Functions

virtual bool checkLocalFile (std::string file_name)
 local C++ method : This method is used by revFiles to check if a local managed file is ok. More...
 
virtual bool getDistributedFile (std::string file_name)
 local C++ method : this method is used by recvFiles to get a distributed file from is distributed source. More...
 

Protected Attributes

int _fileId
 
long _path_max
 
_t_fileAccess _fileAccess
 
_t_fileManaged _fileManaged
 
_t_fileDistributedSource _fileDistributedSource
 
Engines::SfState _state
 
Engines::Container_ptr _container
 
Engines::Salome_file_var _default_source_Salome_file
 
int _fileKey
 
int _ctr
 
PortableServer::POA_var myPOA
 
int myRefCounter
 

Detailed Description

A class to manage file transfer in SALOME.

Member Typedef Documentation

typedef std::map<int, FILE*> Salome_file_i::_t_fileAccess
protected
typedef std::map<std::string, Engines::Salome_file_var> Salome_file_i::_t_fileDistributedSource
protected
typedef std::map<std::string, Engines::file> Salome_file_i::_t_fileManaged
protected

Constructor & Destructor Documentation

Salome_file_i::~Salome_file_i ( )
virtual

Destructor.

Member Function Documentation

PortableServer::POA_ptr SALOME::GenericObj_i::_default_POA ( )
virtualinherited

Get default POA for the servant object.

This function is implicitly called from "_this()" function. Default POA can be set via the constructor.

Returns
reference to the default POA for the servant

References SALOME::GenericObj_i::myPOA.

bool Salome_file_i::checkLocalFile ( std::string  file_name)
protectedvirtual

local C++ method : This method is used by revFiles to check if a local managed file is ok.

Parameters
fileNamename of the file

References _fileManaged, and INFOS.

Referenced by recvFiles(), and Parallel_Salome_file_i::recvFiles_node().

void Salome_file_i::close ( CORBA::Long  fileId)
virtual

CORBA method: close the file associated to the fileId given at open.

Parameters
fileIdgot in return from open method

References _fileAccess, INFOS, and MESSAGE.

Referenced by load().

void Salome_file_i::connect ( Engines::Salome_file_ptr  source_Salome_file)
virtual
void Salome_file_i::connectDistributedFile ( const char file_name,
Engines::Salome_file_ptr  source_Salome_file 
)
virtual
void SALOME::GenericObj_i::Destroy ( )
virtualinherited

Decrement reference counter.

Deprecated:
Use UnRegister() instead.

References MESSAGE, and SALOME::GenericObj_i::UnRegister().

Engines::fileBlock * Salome_file_i::getBlock ( CORBA::Long  fileId)
virtual

References _fileAccess, FILEBLOCK_SIZE, and INFOS.

bool Salome_file_i::getDistributedFile ( std::string  file_name)
protectedvirtual

local C++ method : this method is used by recvFiles to get a distributed file from is distributed source.

If there is no source_file_name for the file, it tries to get the file from the source. In this case, the source distributed file has to managed only one file to be able to the send the file.

Parameters
fileNamename of the file

References _fileDistributedSource, _fileManaged, ASSERT, INFOS, and MESSAGE.

Referenced by recvFiles(), and Parallel_Salome_file_i::recvFiles_node().

Engines::file * Salome_file_i::getFileInfos ( const char file_name)
virtual
Engines::files * Salome_file_i::getFilesInfos ( )
virtual

CORBA method.

See Also
Engines::Salome_file::getFilesInfos

References _fileManaged.

Referenced by main().

Engines::SfState * Salome_file_i::getSalome_fileState ( )
virtual

CORBA method.

See Also
Engines::Salome_file::getSalome_fileState

References _state.

Referenced by main().

CORBA::Long Salome_file_i::open ( const char file_name)
virtual

CORBA method: try to open the file given.

If the file is readable, return a positive integer else return 0;

Parameters
fileNamefile name to be transfered
Returns
fileId = positive integer > 0 if open OK.

References _fileAccess, _fileId, _fileManaged, INFOS, and MESSAGE.

Referenced by load().

CORBA::Long fileTransfer_i::openW ( const char fileName)
inherited

open the given file in write mode (for copy)

CORBA method: try to open the file. If the file is writable, return a positive integer else return 0;

Parameters
fileNamepath to the file to be transfered
Returns
fileId = positive integer > 0 if open OK.

References fileTransfer_i::_ctr, fileTransfer_i::_fileAccess, fileTransfer_i::_fileKey, INFOS, and MESSAGE.

void fileTransfer_i::putBlock ( CORBA::Long  fileId,
const Engines::fileBlock block 
)
inherited

put a data block for copy into a file

CORBA method: put a block of data into the file associated to the fileId given at openW.

Parameters
fileIdgot in return from openW method
blockan octet sequence to copy into opened file

References fileTransfer_i::_fileAccess, INFOS, MESSAGE, and SCRUTE.

void SALOME::GenericObj_i::Register ( )
virtualinherited

Increment reference counter.

References IS_OBJ_IN_QUESTION, MESSAGE, MYDEBUG, and SALOME::GenericObj_i::myRefCounter.

void Salome_file_i::removeFile ( const char file_name)
virtual

CORBA method.

See Also
Engines::Salome_file::removeFile

References MESSAGE.

void Salome_file_i::removeFiles ( )
virtual

CORBA method.

See Also
Engines::Salome_file::removeFiles

References MESSAGE.

void Salome_file_i::setContainer ( Engines::Container_ptr  container)
virtual
void Salome_file_i::setDistributedSourceFile ( const char file_name,
const char source_file_name 
)
virtual
void SALOME::GenericObj_i::UnRegister ( )
virtualinherited

Decrement reference counter.

As soon as reference counter goes to zero, the object is automatically deactivated.

References IS_OBJ_IN_QUESTION, MESSAGE, MYDEBUG, SALOME::GenericObj_i::myPOA, and SALOME::GenericObj_i::myRefCounter.

Referenced by SALOME::GenericObj_i::Destroy().

Field Documentation

int fileTransfer_i::_ctr
protectedinherited
Engines::Salome_file_var Salome_file_i::_default_source_Salome_file
protected
_t_fileAccess Salome_file_i::_fileAccess
protected

Referenced by close(), getBlock(), and open().

int Salome_file_i::_fileId
protected

Referenced by open(), and Salome_file_i().

int fileTransfer_i::_fileKey
protectedinherited
long Salome_file_i::_path_max
protected
PortableServer::POA_var SALOME::GenericObj_i::myPOA
protectedinherited
int SALOME::GenericObj_i::myRefCounter
protectedinherited