COOLFluiD  Release kernel
COOLFluiD is a Collaborative Simulation Environment (CSE) focused on complex MultiPhysics simulations.
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.

Public Member Functions

 Reader (const std::string &name)
 
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

typedef std::pair< Handle< Elements >, UintRegion_TableIndex_pair
 

Private Member Functions

virtual void do_read_mesh_into (const common::URI &fp, Mesh &mesh)
 
void read_base (Mesh &parent_region)
 
void read_zone (Mesh &parent_region)
 
void read_coordinates_unstructured (Region &parent_region)
 
void read_coordinates_structured (Region &parent_region)
 
void read_section (Region &parent_region)
 
void create_structured_elements (Region &parent_region)
 
void read_boco_unstructured (Region &parent_region)
 
void read_boco_structured (Region &parent_region)
 
void read_flowsolution ()
 
Uint get_total_nbElements ()
 
Uint structured_node_idx (Uint i, Uint j, Uint k)
 
Uint structured_elm_idx (Uint i, Uint j, Uint k)
 

Private Attributes

std::vector< Region_TableIndex_pairm_global_to_region
 
Handle< Meshm_mesh
 
Uint m_coord_start_idx
 

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 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< CGNS_ENUMT(ElementType_t), std::string > m_elemtype_CGNS_to_CF
 
std::map< std::string, CGNS_ENUMT(ElementType_t)> m_elemtype_CF3_to_CGNS
 
struct cf3::mesh::CGNS::Shared::CGNS_Size m_size
 
bool m_isCoordinatesCreated
 
bool m_uniqueBase
 
struct cf3::mesh::CGNS::Shared::CGNS_File m_file
 
struct cf3::mesh::CGNS::Shared::CGNS_Base m_base
 
struct cf3::mesh::CGNS::Shared::CGNS_Zone m_zone
 
struct cf3::mesh::CGNS::Shared::CGNS_Section m_section
 
struct cf3::mesh::CGNS::Shared::CGNS_Boco m_boco
 
struct cf3::mesh::CGNS::Shared::CGNS_FlowSolution m_flowsol
 
struct cf3::mesh::CGNS::Shared::CGNS_Field m_field
 
std::map< int, Region * > m_base_map
 
std::map< int, Region * > m_zone_map
 
std::map< int, Region * > m_section_map
 
std::map< int, Dictionary * > m_nodes_map
 
std::map< int, Region * > m_boco_map
 

Detailed Description

This class defines CGNS mesh format reader

Author
Willem Deconinck

Definition at line 28 of file Reader.hpp.

Member Typedef Documentation

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

Definition at line 32 of file Reader.hpp.

Constructor & Destructor Documentation

Reader ( const std::string &  name)

Contructor

Parameters
nameof the component

Definition at line 48 of file Reader.cpp.

Member Function Documentation

void create_structured_elements ( Region parent_region)
private

Definition at line 558 of file Reader.cpp.

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 70 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 61 of file Reader.cpp.

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

Implements MeshReader.

Definition at line 43 of file Reader.hpp.

Uint get_total_nbElements ( )
private

Definition at line 1058 of file Reader.cpp.

void read_base ( Mesh parent_region)
private

Definition at line 100 of file Reader.cpp.

void read_boco_structured ( Region parent_region)
private

Definition at line 806 of file Reader.cpp.

void read_boco_unstructured ( Region parent_region)
private

Definition at line 643 of file Reader.cpp.

void read_coordinates_structured ( Region parent_region)
private

Definition at line 354 of file Reader.cpp.

void read_coordinates_unstructured ( Region parent_region)
private

Definition at line 294 of file Reader.cpp.

void read_flowsolution ( )
private

m_flowsol.ptset_type == CG_NULL , m_flowsol.npnts == 0 –> flowsol covers entire zone m_flowsol.ptset_type == CGNS_ENUMV( PointRange ) , m_flowsol.npnts == 2 –> flowsol covers range m_flowsol.ptset_type == CGNS_ENUMV( PointList ) , m_flowsol.npnts == npnts –> flowsol covers given list of points

Definition at line 968 of file Reader.cpp.

void read_section ( Region parent_region)
private

Definition at line 424 of file Reader.cpp.

void read_zone ( Mesh parent_region)
private

Definition at line 132 of file Reader.cpp.

Uint structured_elm_idx ( Uint  i,
Uint  j,
Uint  k 
)
inlineprivate

Definition at line 66 of file Reader.hpp.

Uint structured_node_idx ( Uint  i,
Uint  j,
Uint  k 
)
inlineprivate

Definition at line 62 of file Reader.hpp.

static std::string type_name ( )
inlinestatic

Gets the Class name.

Definition at line 41 of file Reader.hpp.

Member Data Documentation

Uint m_coord_start_idx
private

Definition at line 75 of file Reader.hpp.

std::vector<Region_TableIndex_pair> m_global_to_region
private

Definition at line 73 of file Reader.hpp.

Handle<Mesh> m_mesh
private

Definition at line 74 of file Reader.hpp.


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