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

#include <Writer.hpp>

Inherits MeshWriter, and Shared.

Public Member Functions

 Writer (const std::string &name)
 constructor More...
 
virtual std::string get_format ()
 
virtual std::vector< std::string > get_extensions ()
 
- Public Member Functions inherited from MeshWriter
 MeshWriter (const std::string &name)
 
virtual ~MeshWriter ()
 Virtual destructor. More...
 
virtual void execute ()
 execute the action More...
 
virtual void write_from_to (const Mesh &mesh, const common::URI &file_path)
 
- 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 MeshWriter
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...
 
static std::string gmsh_name_to_cf_name (const Uint dim, const Uint gmsh_type)
 

Private Member Functions

virtual void write ()
 
void write_header (std::fstream &file)
 
void write_coordinates (std::fstream &file)
 
void write_connectivity (std::fstream &file)
 
void write_interpolation_schemes (std::fstream &file)
 
void write_nodal_data (std::fstream &file)
 
void write_elem_nodal_data (std::fstream &file)
 

Private Attributes

std::map< std::string, Uintm_groupnumber
 
std::map< std::string, Uintm_elementTypes
 
std::vector< Handle< Entities const > > m_entities_vector
 

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 Shared
enum  gmshElement {
  P1LINE =1, P1TRIAG =2, P1QUAD =3, P1TETRA =4,
  P1HEXA =5, P1PRISM =6, P2LINE =8, P2TRIAG =9,
  P2QUAD =10, P2TETRA =11, P2HEXA =12, P0POINT =15,
  P3TRIAG =21, P3LINE =26, P3QUAD = 36
}
 
- 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 MeshWriter
common::URI m_file_path
 File path to be configured. More...
 
RegionFilter m_region_filter
 Filters regions. More...
 
EntitiesFilter m_entities_filter
 Filters entities. More...
 
Handle< Mesh const > m_mesh
 Handle to configured mesh. More...
 
std::vector< Handle< Field const > > m_fields
 Handle to configured fields. More...
 
std::vector< Handle< Region const > > m_regions
 Handle to configured regions. More...
 
std::vector< Handle< Entities const > > m_filtered_entities
 Handle to selected entities. More...
 
bool m_enable_overlap
 If true, writing of overlap will be enabled. More...
 
- Protected Attributes inherited from Shared
std::map< GeoShape::Type, Uintm_CFelement_to_GmshElement
 
std::vector< std::string > m_supported_types
 
std::vector< std::vector< Uint > > m_nodes_cf_to_gmsh
 Faces are not defined in gmsh format. More...
 
std::vector< std::vector< Uint > > m_nodes_gmsh_to_cf
 
- Static Protected Attributes inherited from Shared
static const Uint nb_gmsh_types = 37
 
static const Uint m_nodes_in_gmsh_elem [nb_gmsh_types]
 
static const Uint m_gmsh_elem_dim [nb_gmsh_types]
 
static const Uint m_gmsh_elem_order [nb_gmsh_types]
 
static const std::string gmsh_elem_geo_name [nb_gmsh_types]
 
static const std::string dim_name [4] = { "0D", "1D", "2D", "3D" }
 
static const std::string order_name [10] = { "P0", "P1", "P2", "P3", "P4", "P5", "P6", "P7", "P8", "P9" }
 

Detailed Description

This class defines gmsh mesh format writer

Author
Willem Deconinck

Definition at line 30 of file Writer.hpp.

Constructor & Destructor Documentation

Writer ( const std::string &  name)

constructor

Definition at line 53 of file Writer.cpp.

Member Function Documentation

std::vector< std::string > get_extensions ( )
virtual

Implements MeshWriter.

Definition at line 98 of file Writer.cpp.

virtual std::string get_format ( )
inlinevirtual

Implements MeshWriter.

Definition at line 41 of file Writer.hpp.

static std::string type_name ( )
inlinestatic

Gets the Class name.

Definition at line 39 of file Writer.hpp.

void write ( )
privatevirtual

Reimplemented from MeshWriter.

Definition at line 108 of file Writer.cpp.

void write_connectivity ( std::fstream &  file)
private

Elements section:

$Elements
number-of-elements
elem-number elem-type number-of-tags(3) tag1(group_number) tag2(elementary_entity_index) tag3(partition) elem-node-list
$EndElements
Note
partition number (tag3) is set to -1 for ghost elements (conforming Gmsh standard format)

Definition at line 249 of file Writer.cpp.

void write_coordinates ( std::fstream &  file)
private

Definition at line 209 of file Writer.cpp.

void write_elem_nodal_data ( std::fstream &  file)
private

Discontinuous fields section

$ElementNodeData
number-of-string-tags
< "string-tag" >
...
number-of-real-tags
< real-tag >
...
number-of-integer-tags
< integer-tag >
...
elm-number number-of-nodes-per-element value ...
...
$ElementEndNodeData

write element

set field data

Definition at line 392 of file Writer.cpp.

void write_header ( std::fstream &  file)
private

Definition at line 153 of file Writer.cpp.

void write_interpolation_schemes ( std::fstream &  file)
private

Definition at line 301 of file Writer.cpp.

void write_nodal_data ( std::fstream &  file)
private

set field data

get element_node local coordinates

evaluate field shape function in element_node

Definition at line 561 of file Writer.cpp.

Member Data Documentation

std::map<std::string,Uint> m_elementTypes
private

Definition at line 67 of file Writer.hpp.

std::vector< Handle<Entities const> > m_entities_vector
private

Definition at line 69 of file Writer.hpp.

std::map<std::string,Uint> m_groupnumber
private

Definition at line 65 of file Writer.hpp.


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