Seg3D  2.4
Seg3D is a free volume segmentation and processing tool developed by the NIH Center for Integrative Biomedical Computing at the University of Utah Scientific Computing and Imaging (SCI) Institute.
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
Core::Application Class Reference
Inheritance diagram for Core::Application:
Core::EventHandler Core::RecursiveLockable

Public Member Functions

void finish ()
 
void reset ()
 
bool is_command_line_parameter (const std::string &key)
 
bool check_command_line_parameter (const std::string &key, std::string &value)
 
std::string get_argument (int idx)
 Get the argument (required parameter)
 
void set_command_line_parameter (const std::string &key, const std::string &value)
 put parameters from the command line into a map
 
void parse_command_line_parameters (int argc, char **argv, int num_arguments=0)
 parse parameters from the command line
 
void log_start ()
 Log information about the system to the log file.
 
void log_finish ()
 
bool get_user_directory (boost::filesystem::path &user_dir, bool config_path=false)
 Get the user directory on the current system.
 
bool get_config_directory (boost::filesystem::path &config_dir)
 Get the configuration directory on the current system.
 
bool get_user_desktop_directory (boost::filesystem::path &user_desktop_dir)
 get the path of the users desktop directory
 
bool get_user_name (std::string &user_name)
 Get the current username.
 
bool get_application_filepath (boost::filesystem::path &app_filepath)
 The directory from which the application was launched.
 
bool get_application_filename (boost::filesystem::path &app_filename)
 The directory from which the application was launched plus the name of the executable.
 
long long get_total_virtual_memory ()
 Get the total amount of virtual memory available.
 
long long get_total_physical_memory ()
 Get the total amount of physical memory available.
 
long long get_total_addressable_memory ()
 Get the amount of addressable memory available.
 
long long get_total_addressable_physical_memory ()
 Get the amount of addressable memory available inside RAM.
 
long long get_my_virtual_memory_used ()
 Get the amount of virtual memory used by current process.
 
long long get_my_physical_memory_used ()
 Get the amount of physical memory used by current process.
 
int get_process_id ()
 Get the process id for the current process.
 
bool is_osx_10_5_or_less ()
 
- Public Member Functions inherited from Core::EventHandler
bool is_eventhandler_thread () const
 Is this the event handler thread.
 
void post_event (boost::function< void() > function)
 
void post_and_wait_event (boost::function< void() > function)
 
bool process_events ()
 Process the events that are in the event handler queue.
 
bool wait_and_process_events ()
 Wait for events to come in and process the events.
 
bool start_eventhandler ()
 
bool eventhandler_started ()
 Check whether the eventhandler is running.
 
virtual void run_eventhandler ()
 The main functions that processes all the incoming events.
 
void install_eventhandler_context (EventHandlerContextHandle &context)
 
- Public Member Functions inherited from Core::RecursiveLockable
mutex_type & get_mutex () const
 

Static Public Member Functions

static bool IsApplicationThread ()
 Test whether the current thread is the application thread.
 
static void PostEvent (boost::function< void() > function)
 Short cut to the event handler.
 
static void PostAndWaitEvent (boost::function< void() > function)
 Short cut to the event handler.
 
static mutex_type & GetMutex ()
 Get the mutex of the application.
 
static void Reset ()
 Reset the application.
 
static std::string GetVersion ()
 Get the application version.
 
static int GetMajorVersion ()
 Major release version.
 
static int GetMinorVersion ()
 Minor release version.
 
static int GetPatchVersion ()
 Patch version.
 
static bool Is64Bit ()
 Is the executable a 64bit version.
 
static bool Is32Bit ()
 Is the executable a 64bit version.
 
static std::string GetApplicationName ()
 Get the name of the application.
 
static std::string GetApplicationNameAndVersion ()
 Get the name of the application and its version.
 
static std::string GetAbout ()
 Get the information that should be shown in the about screen.
 
static std::string GetUtilName ()
 Get the name of the utility.
 
static void SetUtilName (const std::string &name)
 Set the name of the utility.
 

Public Attributes

boost::signals2::signal< void() > reset_signal_
 
boost::signals2::signal< void() > application_start_signal_
 
boost::signals2::signal< void() > application_stop_signal_
 This signal is triggered at the end of the program.
 

Additional Inherited Members

- Public Types inherited from Core::RecursiveLockable
typedef boost::recursive_mutex mutex_type
 
typedef boost::unique_lock< mutex_type > lock_type
 
- Protected Member Functions inherited from Core::EventHandler
virtual void initialize_eventhandler ()
 
void terminate_eventhandler ()
 

Member Function Documentation

bool Core::Application::check_command_line_parameter ( const std::string &  key,
std::string &  value 
)

check to see if a particular parameter has been placed into the map if so it returns the value as a string

void Core::Application::finish ( )

Execute the remainder of the actions and terminate the application thread NOTE: This function should be called by main at the end of the program to ensure that actions like saving the last session are properly executed.

void Core::Application::reset ( )

Reset the application. It triggers the reset_signal_. NOTE: This function should only be called in the application thread.

Member Data Documentation

boost::signals2::signal< void () > Core::Application::application_start_signal_

This signal is triggered at the start of the application, before the splash screen is shown. This signal can be used to initialize code from plugins

boost::signals2::signal< void () > Core::Application::reset_signal_

This signal is triggered by calling the reset function. WARNING: Do NOT trigger this signal directly. Call the reset function instead.


The documentation for this class was generated from the following files: