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

Manages everything that is not related to the network layer or the simulation management. More...

#include <CCore.hpp>

Inherits Component.

Classes

struct  DirContent
 

Public Member Functions

 CCore ()
 Constructor. More...
 
 ~CCore ()
 Destructor. More...
 
std::string derived_type_name () const
 Component::derived_type_name implementation. More...
 
bool listen_to_port (cf3::Uint portNumber)
 
void send_signal (common::XML::SignalFrame &signal)
 
void forward_signal (common::SignalArgs &args)
 
void send_ack (const std::string &clientid, const std::string &frameid, bool success, const std::string &message)
 
- 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
 
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)
 

Static Public Member Functions

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

Private Member Functions

void new_client (common::SignalArgs &args)
 Slot called when a new client connects. More...
 
bool get_dir_content (const std::string &directory, const std::vector< std::string > &extensions, bool includeFiles, bool includeNoExtension, DirContent &content) const
 List of user's favorite directories. More...
 
void read_dir (common::SignalArgs &node)
 
void read_special_dir (common::SignalArgs &node)
 
void shutdown (common::SignalArgs &node)
 
void signal_set_favorites (common::SignalArgs &node)
 
void signal_list_favorites (common::SignalArgs &node)
 
void signal_copy_request (common::SignalArgs &node)
 ask the server to do an scp command to copy files from the server or from the client More...
 

Private Attributes

std::string default_path
 The default path for the file browsing. More...
 
ServerNetworkCommm_comm_server
 The network communication. More...
 

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 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...
 

Detailed Description

Manages everything that is not related to the network layer or the simulation management.

Author
Quentin Gasper

Definition at line 43 of file CCore.hpp.

Constructor & Destructor Documentation

CCore ( )

Constructor.

Definition at line 116 of file CCore.cpp.

~CCore ( )

Destructor.

Free all allocated memory.

Definition at line 165 of file CCore.cpp.

Member Function Documentation

std::string derived_type_name ( ) const
inlinevirtual

Component::derived_type_name implementation.

Implements Component.

Definition at line 70 of file CCore.hpp.

void forward_signal ( common::SignalArgs args)

Definition at line 186 of file CCore.cpp.

bool get_dir_content ( const std::string &  directory,
const std::vector< std::string > &  extensions,
bool  includeFiles,
bool  includeNoExtension,
DirContent content 
) const
private

List of user's favorite directories.

Reads a directory contents.

Parameters
directoryDirectory to read.
extensionsList of wanted extensions. According to the network m_protocol, this list may be empty.
includeFilesIf true, sub-directories and files returned. If false, only sub-directories will be returned.
includeNoExtensionIf true, files without any extension will be returned. If false, they will not.
dirsListReference of a QStringList where sub-directories names will be stored.
filesListReference of a QStringList where files names will be stored.
Returns
Returns true if the directory has been correctly read. Otherwise, returns false (dirsList and filesList are not modified in this case).

Definition at line 197 of file CCore.cpp.

bool listen_to_port ( cf3::Uint  portNumber)
Parameters
hostameHost name
portNumberPort number
Exceptions
NetworkException

Definition at line 172 of file CCore.cpp.

void new_client ( common::SignalArgs args)
private

Slot called when a new client connects.

Sends server status (file open, simulation running) to the new client.

Parameters
argsSignal arguments.

Definition at line 429 of file CCore.cpp.

void read_dir ( common::SignalArgs node)
private
Todo:
test this on Windows!!!!

Definition at line 266 of file CCore.cpp.

void read_special_dir ( common::SignalArgs node)
private
Todo:
test this on Windows!!!!

Definition at line 322 of file CCore.cpp.

void send_ack ( const std::string &  clientid,
const std::string &  frameid,
bool  success,
const std::string &  message 
)

Definition at line 438 of file CCore.cpp.

void send_signal ( common::XML::SignalFrame signal)

Definition at line 179 of file CCore.cpp.

void shutdown ( common::SignalArgs node)
private

Definition at line 385 of file CCore.cpp.

void signal_copy_request ( common::SignalArgs node)
private

ask the server to do an scp command to copy files from the server or from the client

Parameters
commandsstd::vector<std::string> containing the parameters of the scp command each time a string with length 0 appear it means that it is a new scp command that should be done

Definition at line 486 of file CCore.cpp.

void signal_list_favorites ( common::SignalArgs node)
private

Definition at line 411 of file CCore.cpp.

void signal_set_favorites ( common::SignalArgs node)
private

Definition at line 393 of file CCore.cpp.

static std::string type_name ( )
inlinestatic

Definition at line 82 of file CCore.hpp.

Member Data Documentation

std::string default_path
private

The default path for the file browsing.

The default path is the current directory (./).

Definition at line 103 of file CCore.hpp.

ServerNetworkComm* m_comm_server
private

The network communication.

Definition at line 106 of file CCore.hpp.


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