Urbi SDK Remote for C++  2.7.5
UrbiRoot Class Reference

#include <urbi-root.hh>

Collaboration diagram for UrbiRoot:

List of all members.

Public Member Functions

 UrbiRoot (const std::string &program, bool static_build=false)
 Load an Urbi SDK.
int urbi_launch (int argc, const char **argv)
int urbi_launch (int argc, char **argv)
int urbi_main (const std::vector< std::string > &args, bool block, bool errors)
void load_plugin ()
void load_remote ()
 Location of Urbi remote libuobject.
void load_custom (const std::string &path)
const std::string & root () const
 Root of the Urbi installation.
std::string core_path () const
 Plugin and remote libuobjects parent directory.
std::string doc_dir () const
 "doc" location.
std::string share_dir () const
 "share" location. Contains urbi/, images/.
std::vector< std::string > uobjects_path () const
 Standard uobjects directories.
std::string library_suffix () const
 The library suffix (e.g., -vc90 or -vc90-d for Visual.) Typically empty.

Private Member Functions

RTLD_HANDLE library_load (const std::string &base, const std::string &env_suffix="")
 Load the library "${libdir}/${base}${ext}", unless the envvar named "URBI_ROOT_LIB${BASE}" points to another location.

Private Attributes

std::string program_
std::string root_
RTLD_HANDLE handle_libjpeg_
RTLD_HANDLE handle_libport_
RTLD_HANDLE handle_libsched_
RTLD_HANDLE handle_libserialize_
RTLD_HANDLE handle_liburbi_
RTLD_HANDLE handle_libuobject_

Detailed Description

Definition at line 34 of file urbi-root.hh.


Constructor & Destructor Documentation

UrbiRoot::UrbiRoot ( const std::string &  program,
bool  static_build = false 
)

Load an Urbi SDK.

Parameters:
programThe command used to invoke urbi-launch or urbi.
static_buildtrue if this is a static build:do not dlopen anything

Definition at line 352 of file liburbi/urbi-root.cc.

References find_program(), handle_libjpeg_, handle_libport_, handle_libsched_, handle_libserialize_, handle_liburbi_, library_load(), program_, resolve_symlinks(), root_, urbi_getenv(), URBI_ROOT_DEBUG, and URBI_ROOT_FATAL.


Member Function Documentation

std::string UrbiRoot::core_path ( ) const

Plugin and remote libuobjects parent directory.

Definition at line 419 of file liburbi/urbi-root.cc.

References root().

Referenced by load_plugin(), load_remote(), and uobjects_path().

std::string UrbiRoot::doc_dir ( ) const

"doc" location.

Contains THANKS.txt, etc. In a normal install, the same as share_dir.

Definition at line 425 of file liburbi/urbi-root.cc.

References program_, root(), and urbi_getenv().

RTLD_HANDLE UrbiRoot::library_load ( const std::string &  base,
const std::string &  env_suffix = "" 
) [private]

Load the library "${libdir}/${base}${ext}", unless the envvar named "URBI_ROOT_LIB${BASE}" points to another location.

Definition at line 395 of file liburbi/urbi-root.cc.

References libdir, library_suffix(), program_, root(), urbi_getenv(), and xdlopen().

Referenced by UrbiRoot().

std::string UrbiRoot::library_suffix ( ) const

The library suffix (e.g., -vc90 or -vc90-d for Visual.) Typically empty.

Definition at line 447 of file liburbi/urbi-root.cc.

Referenced by library_load(), load_plugin(), load_remote(), and uobjects_path().

void UrbiRoot::load_custom ( const std::string &  path)

Definition at line 479 of file liburbi/urbi-root.cc.

References handle_libuobject_, program_, and xdlopen().

Referenced by urbi_launch_().

void UrbiRoot::load_plugin ( )
void UrbiRoot::load_remote ( )

Location of Urbi remote libuobject.

Definition at line 468 of file liburbi/urbi-root.cc.

References core_path(), handle_libuobject_, library_suffix(), program_, urbi_getenv(), and xdlopen().

Referenced by urbi_launch_().

const std::string & UrbiRoot::root ( ) const

Root of the Urbi installation.

Definition at line 413 of file liburbi/urbi-root.cc.

References root_.

Referenced by core_path(), doc_dir(), library_load(), share_dir(), and urbi_launch_().

std::string UrbiRoot::share_dir ( ) const

"share" location. Contains urbi/, images/.

Definition at line 431 of file liburbi/urbi-root.cc.

References program_, root(), and urbi_getenv().

std::vector< std::string > UrbiRoot::uobjects_path ( ) const

Standard uobjects directories.

Definition at line 437 of file liburbi/urbi-root.cc.

References core_path(), and library_suffix().

Referenced by urbi_launch_().

int UrbiRoot::urbi_launch ( int  argc,
const char **  argv 
)

Definition at line 489 of file liburbi/urbi-root.cc.

References handle_liburbi_, and program_.

Referenced by main(), and urbi_launch().

int UrbiRoot::urbi_launch ( int  argc,
char **  argv 
)

Definition at line 499 of file liburbi/urbi-root.cc.

References urbi_launch().

int UrbiRoot::urbi_main ( const std::vector< std::string > &  args,
bool  block,
bool  errors 
)

Definition at line 508 of file liburbi/urbi-root.cc.

References handle_libuobject_, program_, urbi_main_args(), and URBI_ROOT_DEBUG.

Referenced by urbi_launch_().


Member Data Documentation

Definition at line 93 of file urbi-root.hh.

Referenced by UrbiRoot().

Definition at line 94 of file urbi-root.hh.

Referenced by UrbiRoot().

Definition at line 95 of file urbi-root.hh.

Referenced by UrbiRoot().

Definition at line 96 of file urbi-root.hh.

Referenced by UrbiRoot().

Definition at line 98 of file urbi-root.hh.

Referenced by load_custom(), load_plugin(), load_remote(), and urbi_main().

Definition at line 97 of file urbi-root.hh.

Referenced by urbi_launch(), and UrbiRoot().

std::string UrbiRoot::root_ [private]

Definition at line 92 of file urbi-root.hh.

Referenced by root(), and UrbiRoot().


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