CarLinO_leash Class Reference

#include <CarLinO_leash.h>

Inherits AP::AP_Thread, and CarLinO::CarLinO_base.

Inherited by CarLinO_wrapper, CGdb, class1, class2, class3, Console, cudev_leash, Goal, and my_carlino.

Collaboration diagram for CarLinO_leash:

Collaboration graph

Public Member Functions

 CarLinO_leash (const AP_String &name)
 Main class constructor.
AMICO_linkConnectToProcess (const AP_String &alias, AP_PeerSocket::Type type, const AP_Uint32 timeout)
AP_Bool Create (void)
 Create the class and register to CarLinO with alias _m_name.
AP_String DebugCommand (const AP_String &cmd)
AP_Bool debuggerStarted (void) const
AP_Bool DebugStart (const AP_String &local, const AP_String &remote, const AP_String &args, AP_String &response)
AP_Bool DebugStop (void)
AP_Bool DeregisterPrimitive (const AP_String &name)
AP_Bool Destroy (void)
 Destroy CarLinO_leash class.
virtual void Dispatcher (const CarLinO_message *message)=0
 Pure virtual interface.
AP_Bool GoalSend (const AP_String &name, const GOAL_Object::ObjectType type, const AP_String &cmd, const AP_String &value="")
AP_ProcessAttributeprocessAttribute (void) const
CarLinO_list QueryProcess (const AP_String &alias, const AP_String &primitive)
 Register primitive to CarLinO_core.
AP_Bool RegisterPrimitive (const AMICO_primitive_call &primitive)
AP_Bool WaitForProcesses (const AP_String &list)
virtual ~CarLinO_leash (void)
 Main class destructor.

Private Member Functions

void run (void)

Private Attributes

AMICO_attribute _m_attribute
AP_Uint16 _m_available_port
AMICO_link_table _m_connections_incoming
AMICO_link_table _m_connections_outcoming
CarLinO_param _m_param
AMICO_primitive_table _m_primitive_table
AP_Bool _m_remote_debugger_started

Detailed Description

The class is the process termination of CarLinO. You have to derive your main class from CarLinO_leash to use the method needs to comunicate with CarLinO_core.

Constructor & Destructor Documentation

CarLinO_leash ( const AP_String name  ) 

Main class constructor.

name Name of application. This name will be register in CarLinO_core and will be used from other process to point to this application.
param Process parameters for application. It is the main runtime parameters for CarLinO policies as: memory needed, CPU load needed, number of thread used, and so on (see CarLinO_param class).

~CarLinO_leash ( void   )  [virtual]

Main class destructor.

Member Function Documentation

AMICO_link * ConnectToProcess ( const AP_String alias,
AP_PeerSocket::Type  type,
const AP_Uint32  timeout 

AP_Bool Create ( void   ) 

Create the class and register to CarLinO with alias _m_name.

Return true if creation is successfull

AP_String DebugCommand ( const AP_String cmd  ) 

AP_Bool debuggerStarted ( void   )  const [inline]

AP_Bool DebugStart ( const AP_String local,
const AP_String remote,
const AP_String args,
AP_String response 

AP_Bool DebugStop ( void   ) 

AP_Bool DeregisterPrimitive ( const AP_String name  ) 

AP_Bool Destroy ( void   ) 

Destroy CarLinO_leash class.

virtual void Dispatcher ( const CarLinO_message message  )  [pure virtual]

Pure virtual interface.

Implemented in CGdb, Console, cudev_leash, Goal, class1, class2, class3, and my_carlino.

AP_Bool GoalSend ( const AP_String name,
const GOAL_Object::ObjectType  type,
const AP_String cmd,
const AP_String value = "" 

AP_ProcessAttribute* processAttribute ( void   )  const [inline]


CarLinO_list QueryProcess ( const AP_String alias,
const AP_String primitive 

Register primitive to CarLinO_core.

AP_Bool RegisterPrimitive ( const AMICO_primitive_call primitive  ) 

void run ( void   )  [private, virtual]

Main thread function. It must be overloaded in your derived class. It has no parameter.

void run(void)
... do something ...

Reimplemented from AP_Thread.

AP_Bool WaitForProcesses ( const AP_String list  ) 

Field Documentation

AP_Uint16 _m_available_port [private]

AP_Bool _m_remote_debugger_started [private]

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

Generated on Fri Mar 5 16:50:45 2010 for CarLinO by  doxygen 1.5.8