COOLFluiD  Release kernel
COOLFluiD is a Collaborative Simulation Environment (CSE) focused on complex MultiPhysics simulations.
Classes | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
Reader Class Reference

#include <Reader.hpp>

Inherits MeshReader, and Shared.

Classes

struct  BCData
 
struct  GroupData
 
struct  HeaderData
 

Public Member Functions

 Reader (const std::string &name)
 constructor More...
 
virtual std::string get_format ()
 
virtual std::vector< std::string > get_extensions ()
 
- Public Member Functions inherited from MeshReader
 MeshReader (const std::string &name)
 
virtual ~MeshReader ()
 Virtual destructor. More...
 
void read_mesh_into (const common::URI &path, Mesh &mesh)
 
virtual void execute ()
 execute the action More...
 
void signal_read (common::SignalArgs &node)
 
void signature_read (common::SignalArgs &node)
 
- Public Member Functions inherited from Action
 Action (const std::string &name)
 
virtual Actioncreate_action (const std::string &action_provider, const std::string &name)
 
void signal_execute (common::SignalArgs &node)
 signal to execute this action More...
 
- Public Member Functions inherited from IAction
virtual ~IAction ()
 
- Public Member Functions inherited from Component
 Component (const std::string &name)
 
virtual ~Component ()
 Virtual destructor. More...
 
const std::string & name () const
 Access the name of the component. More...
 
void rename (const std::string &name)
 Rename the component. More...
 
URI uri () const
 Construct the full path. More...
 
void complete_path (URI &path) const
 
Handle< Componentaccess_component (const URI &path) const
 
Handle< Componentaccess_component_checked (const URI &path)
 
Handle< Component const > access_component_checked (const URI &path) const
 
Handle< Componenthandle ()
 Get a handle to the component. More...
 
Handle< Component const > handle () const
 
template<typename ComponentT >
Handle< ComponentT > handle ()
 
template<typename ComponentT >
Handle< ComponentT const > handle () const
 
Handle< Componentparent () const
 
Handle< Component const > root () const
 
Handle< Componentroot ()
 
Handle< Componentget_child (const std::string &name)
 
Handle< Component const > get_child (const std::string &name) const
 
Handle< Componentget_child_checked (const std::string &name)
 
Handle< Component const > get_child_checked (const std::string &name) const
 
Handle< Componentcreate_component (const std::string &name, const std::string &builder)
 Build a (sub)component of this component using the extended type_name of the component. More...
 
template<typename T >
Handle< T > create_component (const std::string &name)
 Create a (sub)component of this component automatically cast to the specified type. More...
 
template<typename T >
Handle< T > create_static_component (const std::string &name)
 Create a static "always there" subcomponent. More...
 
Componentadd_component (const boost::shared_ptr< Component > &subcomp)
 Add the passed component as a subcomponent. More...
 
void add_link (Component &linked_component)
 
boost::shared_ptr< Componentremove_component (const std::string &name)
 Remove a (sub)component of this component. More...
 
boost::shared_ptr< Componentremove_component (Component &subcomp)
 Remove a (sub)component of this component. More...
 
void clear ()
 Remove all sub-components of this component, except for the static ones. More...
 
void move_to (Component &to_parent)
 
std::string tree (bool basic_mode=false, Uint depth=0, Uint recursion_level=0) const
 
std::string info (const std::string &what=std::string("cospt")) const
 
size_t count_children () const
 
virtual std::string derived_type_name () const =0
 
PropertyListproperties ()
 
const PropertyListproperties () const
 
OptionListoptions ()
 
const OptionListoptions () const
 
void reset_options ()
 Reset all options to their default value. More...
 
void configure_option_recursively (const std::string &optname, const boost::any &val)
 
Componentmark_basic ()
 marks this component as basic. More...
 
template<typename ComponentT >
void put_components (std::vector< boost::shared_ptr< ComponentT > > &vec, const bool recurse)
 
template<typename ComponentT >
void put_components (std::vector< boost::shared_ptr< ComponentT const > > &vec, const bool recurse) const
 
template<>
void put_components (std::vector< boost::shared_ptr< Component > > &vec, const bool recurse)
 
template<>
void put_components (std::vector< boost::shared_ptr< Component const > > &vec, const bool recurse) const
 
Component::iterator begin ()
 The begin iterator for a range containing Components. More...
 
Component::iterator end ()
 The end iterator for a range containing Components. More...
 
Component::const_iterator begin () const
 The begin iterator for a range containing Components (const version) More...
 
Component::const_iterator end () const
 The end iterator for a range containing Components (const version) More...
 
Component::iterator recursive_begin ()
 The begin iterator for a recursive range containing Components. More...
 
Component::iterator recursive_end ()
 The end iterator for a recursive range containing Components. More...
 
Component::const_iterator recursive_begin () const
 The begin iterator for a recursive range containing Components (const version) More...
 
Component::const_iterator recursive_end () const
 The end iterator for a recursive range containing Components (const version) More...
 
template<typename T >
Handle< T > create_component (const std::string &name, const std::string &builder)
 Create a component using the reduced builder name. More...
 
void signal_configure (SignalArgs &args)
 configures all the options on this class More...
 
void signal_create_component (SignalArgs &args)
 creates a component from this component More...
 
void signal_delete_component (SignalArgs &args)
 delete this component More...
 
void signal_move_component (SignalArgs &args)
 moves a component from this component to another More...
 
void signal_list_tree (SignalArgs &args) const
 lists the sub components and puts them on the xml_tree More...
 
void signal_list_tree_recursive (SignalArgs &args) const
 prints tree recursively More...
 
void signal_list_properties (SignalArgs &args) const
 lists the properties of this component More...
 
void signal_list_options (SignalArgs &args) const
 lists the properties of this component More...
 
void signal_list_options_recursive (SignalArgs &args) const
 prints all options recursive More...
 
void signal_list_signals (SignalArgs &args) const
 lists the signals of this component More...
 
void signal_list_signals_recursive (SignalArgs &args) const
 prints all signals recursive More...
 
void signal_print_info (SignalArgs &args) const
 gets info on this component More...
 
void signal_print_tree (SignalArgs &args) const
 signal to print the tree More...
 
void signature_print_tree (SignalArgs &args) const
 signature to signal_print_tree More...
 
void signal_rename_component (SignalArgs &args)
 renames this component More...
 
void signal_save_tree (SignalArgs &args)
 dumps the tree to a file More...
 
void signal_list_content (SignalArgs &args)
 gives information about this component such as options, signals, ... More...
 
void signal_signature (SignalArgs &args)
 Gives a signal signature, if any. More...
 
void signature_create_component (SignalArgs &args)
 
void signature_rename_component (SignalArgs &args)
 
void signature_move_component (SignalArgs &args)
 
void signal_store_timings (SignalArgs &args)
 Signal to store the timings (if enabled) into properties, i.e. for readout from python or the GUI. More...
 
void signal_clear (SignalArgs &args)
 Signal to remove all sub-components. More...
 
void signal_reset_options (SignalArgs &args)
 Signal to set all options to their default value. More...
 
void signal_add_tag (SignalArgs &args)
 Signal to add a tag. More...
 
void signature_add_tag (SignalArgs &args)
 
- Public Member Functions inherited from SignalHandler
 ~SignalHandler ()
 
const storage_tsignal_list () const
 
SignalPtr signal (const SignalID &sname)
 
SignalCPtr signal (const SignalID &sname) const
 
SignalRet call_signal (const SignalID &sname, SignalArgs &sinput)
 Calls the signal by providing its name and input. More...
 
SignalRet call_signal (const SignalID &sname, std::vector< std::string > &sinput)
 Calls the signal by providing its name and input. More...
 
bool signal_exists (const SignalID &sname) const
 Checks if a signal exists or not. More...
 
Signalregist_signal (const SignalID &sname)
 Regist signal. More...
 
void unregist_signal (const SignalID &sname)
 Unregist signal. More...
 
- Public Member Functions inherited from ConnectionManager
 ~ConnectionManager ()
 destructor closes all connections More...
 
Connectionconnection (const std::string &name)
 
Connectionmanage_connection (const std::string &name)
 manages a connection (creates if necessary) More...
 
- Public Member Functions inherited from TaggedObject
 TaggedObject ()
 Constructor. More...
 
bool has_tag (const std::string &tag) const
 
void add_tag (const std::string &tag)
 
std::vector< std::string > get_tags () const
 
void remove_tag (const std::string &tag)
 
- Public Member Functions inherited from Shared
 Shared ()
 constructor More...
 
std::vector< std::string > & get_supported_element_types ()
 

Static Public Member Functions

static std::string type_name ()
 Gets the Class name. More...
 
- Static Public Member Functions inherited from MeshReader
static std::string type_name ()
 Get the class name. More...
 
- Static Public Member Functions inherited from Action
static std::string type_name ()
 Get the class name. More...
 
- Static Public Member Functions inherited from Component
static std::string type_name ()
 Get the class name. More...
 
- Static Public Member Functions inherited from Shared
static std::string type_name ()
 Gets the Class name. More...
 

Private Types

enum  HashType { NODES =0, ELEMS =1 }
 
typedef std::pair< Handle< Elements >, UintRegion_TableIndex_pair
 

Private Member Functions

void config_repartition ()
 
void read_headerData ()
 
void find_ghost_nodes ()
 
void read_coordinates ()
 
void read_connectivity ()
 
void read_groups ()
 
void read_boundaries ()
 
void get_file_positions ()
 
std::string element_type (const Uint neu_type, const Uint nb_nodes)
 
virtual void do_read_mesh_into (const common::URI &fp, Mesh &mesh)
 

Private Attributes

Handle< MergedParallelDistributionm_hash
 
std::map< Uint, Region_TableIndex_pairm_global_to_tmp
 
boost::filesystem::fstream m_file
 
Handle< Meshm_mesh
 
Handle< Regionm_region
 
Handle< Regionm_tmp
 
std::set< Uintm_ghost_nodes
 
std::map< Uint, Uintm_neu_node_to_coord_idx
 
Uint m_nodal_coordinates_position
 
Uint m_elements_cells_position
 
std::vector< Uintm_element_group_positions
 
std::vector< Uintm_boundary_condition_positions
 
struct cf3::mesh::neu::Reader::HeaderData m_headerData
 

Additional Inherited Members

- Public Types inherited from Component
typedef ComponentIterator< Componentiterator
 type of the iterator to Component More...
 
typedef ComponentIterator< Component const > const_iterator
 type of the iterator to constant Component More...
 
- Public Types inherited from SignalHandler
typedef std::vector< SignalPtrstorage_t
 storage type for signals More...
 
- Public Attributes inherited from SignalHandler
storage_t m_signals
 storage of the signals More...
 
- Protected Types inherited from MeshReader
typedef std::map< std::string, boost::shared_ptr< common::ArrayBufferT< Uint > > > BufferMap
 Map type from string to a common::Table<Uint>::Buffer. More...
 
- Protected Types inherited from Shared
enum  neuElement {
  LINE =1, QUAD =2, TRIAG =3, HEXA =4,
  PRISM =5, TETRA =6
}
 
- Protected Member Functions inherited from MeshReader
std::map< std::string, Handle< Elements > > create_cells_in_region (Region &parent_region, Dictionary &nodes, const std::vector< std::string > &etypes)
 
std::map< std::string, Handle< Elements > > create_faces_in_region (Region &parent_region, Dictionary &nodes, const std::vector< std::string > &etypes)
 
std::map< std::string, boost::shared_ptr< common::Table< Uint >::Buffer > > create_connectivity_buffermap (std::map< std::string, Handle< Elements > > &elems_map)
 
void remove_empty_element_regions (Region &parent_region)
 
- Protected Member Functions inherited from Component
Componentadd_static_component (const boost::shared_ptr< Component > &subcomp)
 Add a static (sub)component of this component. More...
 
void raise_tree_updated_event ()
 raise event that the path has changed More...
 
- Protected Attributes inherited from MeshReader
Handle< Meshm_mesh
 
common::URI m_file_path
 
- Protected Attributes inherited from Shared
std::map< GeoShape::Type, Uintm_CFelement_to_neuElement
 
std::vector< std::string > m_supported_types
 
std::vector< std::vector< Uint > > m_faces_cf_to_neu
 
std::vector< std::vector< Uint > > m_faces_neu_to_cf
 
std::vector< std::vector< Uint > > m_nodes_cf_to_neu
 
std::vector< std::vector< Uint > > m_nodes_neu_to_cf
 
std::set< Uintm_supported_neu_types
 

Detailed Description

This class defines neutral mesh format reader

Author
Willem Deconinck

Definition at line 32 of file Reader.hpp.

Member Typedef Documentation

typedef std::pair<Handle<Elements>,Uint> Region_TableIndex_pair
private

Definition at line 36 of file Reader.hpp.

Member Enumeration Documentation

enum HashType
private
Enumerator
NODES 
ELEMS 

Definition at line 73 of file Reader.hpp.

Constructor & Destructor Documentation

Reader ( const std::string &  name)

constructor

Definition at line 49 of file Reader.cpp.

Member Function Documentation

void config_repartition ( )
private
void do_read_mesh_into ( const common::URI path,
Mesh mesh 
)
privatevirtual

this function implements the concrete mesh reading algorithm and is called by read_mesh_into

Parameters
[in]paththe file to read in
[in,out]meshthe mesh to write to
Todo:
remove this and read glb_index ourself

Implements MeshReader.

Definition at line 90 of file Reader.cpp.

std::string element_type ( const Uint  neu_type,
const Uint  nb_nodes 
)
private
Todo:
to be implemented

Definition at line 610 of file Reader.cpp.

void find_ghost_nodes ( )
private

Definition at line 240 of file Reader.cpp.

std::vector< std::string > get_extensions ( )
virtual
Returns
the list of possible extensions of the file format

Implements MeshReader.

Definition at line 81 of file Reader.cpp.

void get_file_positions ( )
private

Definition at line 175 of file Reader.cpp.

virtual std::string get_format ( )
inlinevirtual
Returns
the name of the file format

Implements MeshReader.

Definition at line 45 of file Reader.hpp.

void read_boundaries ( )
private

Definition at line 535 of file Reader.cpp.

void read_connectivity ( )
private

Definition at line 363 of file Reader.cpp.

void read_coordinates ( )
private

Definition at line 300 of file Reader.cpp.

void read_groups ( )
private

Definition at line 437 of file Reader.cpp.

void read_headerData ( )
private

Definition at line 206 of file Reader.cpp.

static std::string type_name ( )
inlinestatic

Gets the Class name.

Definition at line 43 of file Reader.hpp.

Member Data Documentation

std::vector<Uint> m_boundary_condition_positions
private

Definition at line 90 of file Reader.hpp.

std::vector<Uint> m_element_group_positions
private

Definition at line 89 of file Reader.hpp.

Uint m_elements_cells_position
private

Definition at line 88 of file Reader.hpp.

boost::filesystem::fstream m_file
private

Definition at line 79 of file Reader.hpp.

std::set<Uint> m_ghost_nodes
private

Definition at line 84 of file Reader.hpp.

std::map<Uint,Region_TableIndex_pair> m_global_to_tmp
private

Definition at line 77 of file Reader.hpp.

Definition at line 74 of file Reader.hpp.

struct cf3::mesh::neu::Reader::HeaderData m_headerData
private
Handle<Mesh> m_mesh
private

Definition at line 80 of file Reader.hpp.

std::map<Uint,Uint> m_neu_node_to_coord_idx
private

Definition at line 85 of file Reader.hpp.

Uint m_nodal_coordinates_position
private

Definition at line 87 of file Reader.hpp.

Handle<Region> m_region
private

Definition at line 81 of file Reader.hpp.

Handle< Region > m_tmp
private

Definition at line 82 of file Reader.hpp.


The documentation for this class was generated from the following files:
Send comments to:
COOLFluiD Web Admin