|
TrioCFD 1.9.9_beta
TrioCFD documentation
|
This class implements the operators and virtual methods of the EFichier class as follows: there are as many files as there are processes, physically located on the disk of the machine hosting the master task of the Trio-U application (the process of rank 0 in the "all" group). More...
#include <LecFicDistribue.h>
Public Member Functions | |
| LecFicDistribue (const char *name, IOS_OPEN_MODE mode=ios::in) | |
| Constructor. Opens the file with the given mode and prot parameters. | |
| int | ouvrir (const char *name, IOS_OPEN_MODE mode=ios::in) override |
| Opens the file with the given mode and prot parameters. These parameters are the parameters of the standard open method. | |
| Public Member Functions inherited from EFichier | |
| EFichier (const char *name, IOS_OPEN_MODE mode=ios::in) | |
| Public Member Functions inherited from Entree_Fichier_base | |
| Entree_Fichier_base () | |
| Entree_Fichier_base (const Entree_Fichier_base &)=default | |
| Entree_Fichier_base (const char *name, IOS_OPEN_MODE mode=ios::in) | |
| ifstream & | get_ifstream () |
| void | close () |
| int | eof () override |
| int | fail () override |
| int | good () override |
| void | precision (int pre) |
| void | setf (IOS_FORMAT code) |
| Public Member Functions inherited from Entree | |
| Entree () | |
| Entree (istream &is) | |
| Entree (const Entree &is) | |
| virtual | ~Entree () |
| void | set_bin (bool bin) override |
| Changes the file write mode. | |
| Entree & | operator= (istream &is) |
| Entree & | operator= (Entree &is) |
| virtual istream & | get_istream () |
| virtual const istream & | get_istream () const |
| void | set_istream (istream *is) |
| Entree & | operator>> (Entree &(*f)(Entree &)) |
| Entree & | operator>> (istream &(*f)(istream &)) |
| Entree & | operator>> (ios &(*f)(ios &)) |
| template<typename T> | |
| Entree & | operator>> (const TRUST_Ref< T > &) |
| Entree & | operator>> (const TRUST_Ref_Objet_U &) |
| virtual Entree & | operator>> (int &ob) |
| virtual Entree & | operator>> (long &ob) |
| virtual Entree & | operator>> (long long &ob) |
| virtual Entree & | operator>> (float &ob) |
| virtual Entree & | operator>> (double &ob) |
| virtual Entree & | operator>> (std::string &ob) |
| virtual Entree & | operator>> (Objet_U &ob) final |
| virtual int | get (int *ob, std::streamsize n) |
| virtual int | get (long *ob, std::streamsize n) |
| virtual int | get (long long *ob, std::streamsize n) |
| virtual int | get (float *ob, std::streamsize n) |
| virtual int | get (double *ob, std::streamsize n) |
| virtual int | get (char *buf, std::streamsize bufsize) |
| Reads a string from ostream_. bufsize is the size of the buffer allocated for ob (including. | |
| virtual int | jumpOfLines () |
| virtual void | set_check_types (bool flag) |
| Indicates whether the stream should verify the types of read objects (ints and floating-point numbers). | |
| bool | check_types () const |
| virtual void | set_error_action (Error_Action) |
| Changes the error behaviour of the input; see error_handle_() and get_error_action(). | |
| Error_Action | get_error_action () |
| Returns error_action_ for this input (allows modifying it and restoring the previous value afterwards). | |
| operator istream & () | |
| istream & | putback (char ch) |
| bool | get_diffuse () |
| virtual void | set_diffuse (bool diffuse) |
| Sets the diffuse flag for this input stream. | |
| Public Member Functions inherited from AbstractIO | |
| bool | is_64b () const |
| virtual void | set_64b (bool is_64b) |
| bool | is_bin () |
| void | set_avoid_conversion (bool avoid) |
| bool | avoid_conversion () |
| Public Member Functions inherited from Objet_U | |
| ~Objet_U () override | |
| Destructor. Removes the object from the list of objects registered in "memory". | |
| int | numero () const |
| Returns the index of the object in Memoire::data. | |
| virtual int | duplique () const =0 |
| virtual Sortie & | printOn (Sortie &) const |
| Writes the object to an output stream. Virtual method to override. | |
| virtual Entree & | readOn (Entree &) |
| Reads an Objet_U from an input stream. Virtual method to override. | |
| virtual unsigned | taille_memoire () const =0 |
| virtual int | est_egal_a (const Objet_U &) const |
| Returns 1 if x and *this are the same instance (same memory address). | |
| virtual const Nom & | le_nom () const |
| Returns the name of the Objet_U. Virtual method to override: returns "neant" in this implementation. | |
| virtual void | nommer (const Nom &) |
| Assigns a name to the Objet_U. Virtual method to override. | |
| virtual int | reprendre (Entree &) |
| Restores an Objet_U from an input stream. Virtual method to override. | |
| virtual int | sauvegarder (Sortie &) const |
| Saves an Objet_U to an output stream. Virtual method to override. | |
| int | get_object_id () const |
| Returns the unique identifier of the object (object_id_). | |
| virtual const Type_info * | get_info () const |
| Returns type information for the Objet_U. | |
| const Nom & | que_suis_je () const |
| Returns the string identifying the class. | |
| const char * | le_type () const |
| Returns the type name of the Objet_U. | |
| virtual int | change_num (const int *const) |
| Changes the internal number of the Objet_U. | |
| virtual int | lire_motcle_non_standard (const Motcle &motlu, Entree &is) |
| Reads non-simple-type parameters of an Objet_U from an input stream. | |
| virtual int | associer_ (Objet_U &) |
| Associates the Objet_U with another Objet_U. Virtual method to override. | |
| const Interprete & | interprete () const |
| Interprete & | interprete () |
| Public Member Functions inherited from Process | |
| virtual | ~Process () |
Additional Inherited Members | |
| Public Types inherited from Entree | |
| enum | Error_Action { ERROR_EXIT , ERROR_CONTINUE , ERROR_EXCEPTION } |
| Static Public Member Functions inherited from Entree_Fichier_base | |
| static bool | Can_be_read (const char *name) |
| Return True if the file can be opened for reading, false otherwise. | |
| Static Public Member Functions inherited from Objet_U | |
| static const Nom & | nom_du_cas () |
| Returns a constant reference to the case name. This method is static. | |
| static Nom & | get_set_nom_du_cas () |
| Returns a non-constant reference to the case name (to allow modification). This method is static. | |
| static const Type_info * | info () |
| Returns type information for the Objet_U (static version). | |
| static const Objet_U & | self_cast (const Objet_U &) |
| Method added for casting in Python. | |
| static Objet_U & | self_cast (Objet_U &) |
| Static Public Member Functions inherited from Process | |
| static int | me () |
| Returns the rank of the local processor in the current communication group. See Comm_Group::rank() and PE_Groups::current_group(). | |
| static int | nproc () |
| Returns the number of processors in the current group. See Comm_Group::nproc() and PE_Groups::current_group(). | |
| static bool | is_parallel () |
| static void | exit (int exit_code=-1) |
| Exit routine for TRUST within a Kokkos region. | |
| static double | mp_sum (double) |
| Computes the sum of x over all processors in the current group. | |
| static float | mp_sum (float) |
| static trustIdType | mp_sum (trustIdType) |
| Computes the sum of x over all processors in the current group. | |
| static double | mp_max (double) |
| static double | mp_min (double) |
| static int | mp_max (int) |
| Returns the maximum value of x across all processors in the current group. | |
| static int | mp_min (int) |
| Returns the minimum value of x across all processors in the current group. | |
| static double | mp_sum_as_double (int v) |
| static trustIdType | mppartial_sum (trustIdType i) |
| Computes the partial sum of x over processors 0 to me()-1 (returns 0 on processor 0). | |
| template<typename T> | |
| static void | mp_sum_for_each (T &arg1, T &arg2) |
| C++14 compatible mp_sum_for_each: combine multiple mp_sum calls into one collective operation Usage: mp_sum_for_each(a, b); mp_sum_for_each(a, b, c); mp_sum_for_each(a, b, c, d); mp_sum_for_each(a, b, c, d, e); All arguments must be of the same type (double or int) and are modified in place. Supports 2-5 parameters. | |
| template<typename T> | |
| static void | mp_sum_for_each (T &arg1, T &arg2, T &arg3) |
| template<typename T> | |
| static void | mp_sum_for_each (T &arg1, T &arg2, T &arg3, T &arg4) |
| template<typename T> | |
| static void | mp_sum_for_each (T &arg1, T &arg2, T &arg3, T &arg4, T &arg5) |
| template<typename T> | |
| static void | mp_max_for_each (T &arg1, T &arg2) |
| C++14 compatible mp_max_for_each: combine multiple mp_max calls into one collective operation. | |
| template<typename T> | |
| static void | mp_max_for_each (T &arg1, T &arg2, T &arg3) |
| template<typename T> | |
| static void | mp_max_for_each (T &arg1, T &arg2, T &arg3, T &arg4) |
| template<typename T> | |
| static void | mp_max_for_each (T &arg1, T &arg2, T &arg3, T &arg4, T &arg5) |
| template<typename T> | |
| static void | mp_min_for_each (T &arg1, T &arg2) |
| C++14 compatible mp_min_for_each: combine multiple mp_min calls into one collective operation. | |
| template<typename T> | |
| static void | mp_min_for_each (T &arg1, T &arg2, T &arg3) |
| template<typename T> | |
| static void | mp_min_for_each (T &arg1, T &arg2, T &arg3, T &arg4) |
| template<typename T> | |
| static void | mp_min_for_each (T &arg1, T &arg2, T &arg3, T &arg4, T &arg5) |
| template<typename _TYPE_> | |
| static void | mp_sum_for_each_item (TRUSTArray< _TYPE_ > &x, int n=-1) |
| template<typename _TYPE_> | |
| static void | mp_max_for_each_item (TRUSTArray< _TYPE_ > &x, int n=-1) |
| template<typename _TYPE_> | |
| static void | mp_min_for_each_item (TRUSTArray< _TYPE_ > &x, int n=-1) |
| static bool | mp_and (bool) |
| Computes the logical AND of b across all processors in the current group. | |
| static bool | mp_or (bool) |
| static int | check_int_overflow (trustIdType) |
| static int | je_suis_maitre () |
| Returns 1 if on the master processor of the current group (i.e. me() == 0), 0 otherwise. | |
| static KOKKOS_INLINE_FUNCTION void | Kokkos_exit (const char *) |
| Exit routine for TRUST within a Kokkos region. | |
| static int | node_master () |
| Returns 1 if on the NUMA node master processor, 0 otherwise. | |
| static void | exit (const Nom &message, int exit_code=-1) |
| static bool | is_sequential () |
| static void | barrier () |
| Synchronizes all processors in the current group (waits until all processors have reached the barrier). | |
| static void | abort () |
| Abort routine for TRUST on a fatal error. | |
| static Sortie & | Journal (int message_level=0) |
| Returns a static Sortie object used as an event journal. | |
| static double | ram_processeur () |
| static void | imprimer_ram_totale (int all_process=0) |
| static bool | force_single_file (const int ranks, const Nom &filename) |
| Static Public Attributes inherited from Objet_U | |
| static double | precision_geom = 1e-10 |
| static constexpr bool | HAS_POINTER = false |
| static int | dimension =0 |
| static int | format_precision_geom =11 |
| static int | axi =0 |
| static int | bidim_axi =0 |
| static int | DEACTIVATE_SIGINT_CATCH =0 |
| static Type_info | info_obj |
| static bool | disable_TU =false |
| Flag to disable or not the writing of the .TU files. | |
| static bool | stat_per_proc_perf_log =false |
| Flag to enable the writing of the statistics detailed per processor in _csv.TU file. | |
| Static Public Attributes inherited from Process | |
| static int | exception_sur_exit =0 |
| static int | multiple_files =5120 |
| Protected Member Functions inherited from Entree | |
| int | error_handle (int fail_flag) |
| virtual int | error_handle_ (int fail_flag) |
| This function is called by operator>>, get, get_nom, ouvrir, fermer, lire, etc. | |
| Protected Member Functions inherited from AbstractIO | |
| AbstractIO () | |
| virtual | ~AbstractIO () |
| template<typename _TYPE_> | |
| bool | must_convert () const |
| Whether to convert an int into a long when reading/writing out data. | |
| Protected Member Functions inherited from Objet_U | |
| Objet_U () | |
| Default constructor: assigns a unique identifier to the object (object_id_) and registers the object in "memory" by giving it a num_obj number. | |
| Objet_U (const Objet_U &) | |
| Copy constructor. | |
| const Objet_U & | operator= (const Objet_U &) |
| Assignment operator: does nothing (the number and identifier are preserved). | |
| virtual void | set_param (Param &) const |
| Protected Attributes inherited from Entree_Fichier_base | |
| ifstream * | ifstream_ |
| Protected Attributes inherited from Entree | |
| bool | check_types_ = false |
| Error_Action | error_action_ |
| bool | diffuse_ |
| Protected Attributes inherited from AbstractIO | |
| bool | bin_ = false |
| Is this a binary flux? | |
| bool | is_64b_ |
| Will we be reading/writing in 64b? (Init in ctor to avoid including arch.h probably). | |
| bool | avoid_conversion_ = false |
This class implements the operators and virtual methods of the EFichier class as follows: there are as many files as there are processes, physically located on the disk of the machine hosting the master task of the Trio-U application (the process of rank 0 in the "all" group).
The master process reads one item at a time from each file and sends it to the corresponding process. The same applies to the methods for inspecting the state of a file.
Definition at line 32 of file LecFicDistribue.h.
| LecFicDistribue::LecFicDistribue | ( | const char * | name, |
| IOS_OPEN_MODE | mode = ios::in ) |
Constructor. Opens the file with the given mode and prot parameters.
These parameters are the parameters of the standard open method.
| (const | char* name) file name |
| (int | mode) parameter passed to open |
| (int | prot) parameter passed to open |
Definition at line 51 of file LecFicDistribue.cpp.
|
overridevirtual |
Opens the file with the given mode and prot parameters. These parameters are the parameters of the standard open method.
| (const | char* name) file name |
| (int | mode) parameter passed to open |
| (int | prot) parameter passed to open |
Reimplemented from Entree_Fichier_base.
Definition at line 64 of file LecFicDistribue.cpp.