DaVinci Module Reference

#include <DaVinci.h>

Collaboration diagram for DaVinci:

Collaboration graph
[legend]

Public Member Functions

 DaVinci (MEM_POOL *m, FILE *trace_fp=NULL, bool usage_check=false)
 ~DaVinci ()
bool is_ok () const
 DaVinci (const DaVinci &)
void operator= (const DaVinci &)
void Event_Loop (DaVinci_Callback *cb_hook)
void Exit_Event_Loop ()
DA_ACK Title (const char *title)
DA_ACK Show_Status (const char *status)
DA_ACK Show_Message (const char *msg)
DA_ACK Menu_Create (INT n_items, const MENU_INFO *items)
DA_ACK Menu_Activate (INT n_ids, const char *ids[])
DA_ACK Menu_Deactivate (INT n_ids, const char *ids[])
void Graph_Begin ()
void Node_Begin (NODE_ID id, const char *label, const NODE_TYPE &node_type)
void Out_Edge (const EDGE_ID &edge_id, const EDGE_TYPE &edge_type, const NODE_ID dest_id)
void Node_End ()
DA_ACK Graph_End ()
DA_ACK Change_Attr (const NODE_ID node_id, const NODE_TYPE &nt, const char *new_label=NULL)
DA_ACK Change_Attr (const EDGE_ID &edge_id, const EDGE_TYPE &et)
void Update_Begin ()
void New_Node (NODE_ID id, const char *label, const NODE_TYPE &nt)
void New_Edge (const EDGE_ID &id, const EDGE_TYPE &et, NODE_ID src, NODE_ID dst)
void Delete_Edge (const EDGE_ID &id)
DA_ACK Update_End ()

Static Public Member Functions

static bool enabled (bool msg)

Private Types

typedef UINT32 FTAG
typedef FTAG FTAGS

Private Member Functions

const char * Ft_Str (const FTAG ftag)
void Usage_Error (FTAG curr, FTAGS prereq)
bool Usage_Ok (FTAG curr, FTAGS prereq)
DA_ACK Wait_For_Ack ()
DA_ACK Emit_Ack (const char *line)
void Emit_Do (const char *line)
const char * Parse_Menu_Label (const char *epfx)
bool Parse_Event (const char *line, EVENT_T *event)
bool Parse_Node_Ids (const char *epfx, INT *n_nodes, NODE_ID **node_ids)
void Emit_Menu (INT n_items, const MENU_INFO *items)
void Emit_Attr (const NODE_TYPE &nt, const char **comma)
void Emit_Attr (const EDGE_TYPE &et)
void Menu_Basic_Do (const char *label)
DA_ACK Menu_Set_Active ()
void Kill_Davinci ()

Private Attributes

IO _io
MEM_POOL_m
std::queue< EVENT_T_event_q
std::set< NODE_ID_node_def_set
std::set< NODE_ID_node_ref_set
Menu_info _menu_state
bool _basic_menu_added
bool _in_event_loop
bool _display_ok
bool _usage_check
FTAG _ftag_last
INT _node_cnt
INT _edge_cnt
pid_t _pid
INT _contex

Static Private Attributes

static std::queue< EVENT_T_event_q_socket [MAX_VIEW_NUM]
static INT _tcp_socket = 0
static INT _davinci_count = 0
static INT _contex_count = 0
static CONTEX_TYPE _contex_use_array [MAX_VIEW_NUM]
static INT _current_contex = -1
static bool _use_socket = false

Data Types

module  IO

Detailed Description

Definition at line 373 of file DaVinci.h.


Member Typedef Documentation

typedef UINT32 DaVinci::FTAG [private]

Definition at line 397 of file DaVinci.h.

typedef FTAG DaVinci::FTAGS [private]

Definition at line 398 of file DaVinci.h.


Constructor & Destructor Documentation

DaVinci::DaVinci ( MEM_POOL m,
FILE trace_fp = NULL,
bool  usage_check = false 
)

DaVinci::~DaVinci (  ) 

Definition at line 916 of file DaVinci.cxx.

References _davinci_count, _tcp_socket, _use_socket, and close.

DaVinci::DaVinci ( const DaVinci  ) 


Member Function/Subroutine Documentation

const char * DaVinci::Ft_Str ( const FTAG  ftag  )  [private]

void DaVinci::Usage_Error ( FTAG  curr,
FTAGS  prereq 
) [private]

Definition at line 345 of file DaVinci.cxx.

References _display_ok, _ftag_last, comma, fprintf(), FT_DAVINCI, and Ft_Str().

Referenced by Usage_Ok().

bool DaVinci::Usage_Ok ( FTAG  curr,
FTAGS  prereq 
) [inline, private]

DA_ACK DaVinci::Wait_For_Ack (  )  [private]

DA_ACK DaVinci::Emit_Ack ( const char *  line  )  [inline, private]

Definition at line 436 of file DaVinci.h.

References _io, assert, NULL, DaVinci::IO::Out_Fmt(), strchr, and Wait_For_Ack().

Referenced by Emit_Do().

void DaVinci::Emit_Do ( const char *  line  )  [inline, private]

Definition at line 442 of file DaVinci.h.

References Emit_Ack(), fprintf(), and msg.

Referenced by DaVinci(), and Menu_Basic_Do().

const char * DaVinci::Parse_Menu_Label ( const char *  epfx  )  [private]

Definition at line 474 of file DaVinci.cxx.

References _menu_state, Menu_info::Add(), fprintf(), INT, len, MAX_MENU_LABEL_LEN, NULL, strlen(), and strncpy().

Referenced by Parse_Event().

bool DaVinci::Parse_Event ( const char *  line,
EVENT_T event 
) [private]

bool DaVinci::Parse_Node_Ids ( const char *  epfx,
INT n_nodes,
NODE_ID **  node_ids 
) [private]

Definition at line 410 of file DaVinci.cxx.

References _m, CXX_NEW_ARRAY, fprintf(), i, INT, NULL, sp, sscanf(), and strchr.

Referenced by Parse_Event().

void DaVinci::Emit_Menu ( INT  n_items,
const MENU_INFO items 
) [private]

Definition at line 582 of file DaVinci.cxx.

References _io, _menu_state, DM_ACTIVE, DM_INACTIVE, i, INT, DaVinci::IO::Out_Fmt(), and Menu_info::Set().

Referenced by Menu_Create().

void DaVinci::Emit_Attr ( const NODE_TYPE nt,
const char **  comma 
) [private]

void DaVinci::Emit_Attr ( const EDGE_TYPE et  )  [private]

void DaVinci::Menu_Basic_Do ( const char *  label  )  [private]

Definition at line 695 of file DaVinci.cxx.

References _contex, _io, _use_socket, Emit_Do(), Exit_Event_Loop(), DaVinci::IO::Out_Fmt(), s, sprintf(), and strcmp().

Referenced by Event_Loop().

DA_ACK DaVinci::Menu_Set_Active (  )  [private]

void DaVinci::Kill_Davinci (  )  [private]

Definition at line 730 of file DaVinci.cxx.

References _display_ok, _io, _pid, DaVinci::IO::Close(), INT, kill, and waitpid.

static bool DaVinci::enabled ( bool  msg  )  [inline, static]

bool DaVinci::is_ok (  )  const [inline]

Definition at line 482 of file DaVinci.h.

References _display_ok.

Referenced by WB_DAV_deps_loop(), and WB_DAV_deps_ref().

void DaVinci::operator= ( const DaVinci  ) 

void DaVinci::Event_Loop ( DaVinci_Callback cb_hook  ) 

void DaVinci::Exit_Event_Loop (  ) 

Definition at line 1056 of file DaVinci.cxx.

References _in_event_loop.

Referenced by Menu_Basic_Do().

DA_ACK DaVinci::Title ( const char *  title  ) 

DA_ACK DaVinci::Show_Status ( const char *  status  ) 

DA_ACK DaVinci::Show_Message ( const char *  msg  ) 

Definition at line 1080 of file DaVinci.cxx.

References _io, BASE_SET, FT_SHOW_MESSAGE, DaVinci::IO::Out_Fmt(), Usage_Ok(), and Wait_For_Ack().

DA_ACK DaVinci::Menu_Create ( INT  n_items,
const MENU_INFO items 
)

DA_ACK DaVinci::Menu_Activate ( INT  n_ids,
const char *  ids[] 
)

DA_ACK DaVinci::Menu_Deactivate ( INT  n_ids,
const char *  ids[] 
)

void DaVinci::Graph_Begin (  ) 

void DaVinci::Node_Begin ( NODE_ID  id,
const char *  label,
const NODE_TYPE node_type 
)

void DaVinci::Out_Edge ( const EDGE_ID edge_id,
const EDGE_TYPE edge_type,
const NODE_ID  dest_id 
)

void DaVinci::Node_End (  ) 

DA_ACK DaVinci::Graph_End (  ) 

DA_ACK DaVinci::Change_Attr ( const NODE_ID  node_id,
const NODE_TYPE nt,
const char *  new_label = NULL 
)

DA_ACK DaVinci::Change_Attr ( const EDGE_ID edge_id,
const EDGE_TYPE et 
)

void DaVinci::Update_Begin (  ) 

void DaVinci::New_Node ( NODE_ID  id,
const char *  label,
const NODE_TYPE nt 
)

void DaVinci::New_Edge ( const EDGE_ID id,
const EDGE_TYPE et,
NODE_ID  src,
NODE_ID  dst 
)

void DaVinci::Delete_Edge ( const EDGE_ID id  ) 

DA_ACK DaVinci::Update_End (  ) 


Field Documentation

IO DaVinci::_io [private]

MEM_POOL* DaVinci::_m [private]

Definition at line 401 of file DaVinci.h.

Referenced by DaVinci(), and Parse_Node_Ids().

std::queue<EVENT_T> DaVinci::_event_q [private]

Definition at line 402 of file DaVinci.h.

Referenced by Event_Loop(), and Wait_For_Ack().

std::set<NODE_ID> DaVinci::_node_def_set [private]

Definition at line 403 of file DaVinci.h.

Referenced by Graph_End(), and Node_Begin().

std::set<NODE_ID> DaVinci::_node_ref_set [private]

Definition at line 404 of file DaVinci.h.

Referenced by Graph_End(), and Out_Edge().

Definition at line 406 of file DaVinci.h.

Referenced by DaVinci(), and Event_Loop().

Definition at line 407 of file DaVinci.h.

Referenced by DaVinci(), Event_Loop(), and Exit_Event_Loop().

Definition at line 408 of file DaVinci.h.

Referenced by DaVinci(), Event_Loop(), is_ok(), Kill_Davinci(), Usage_Error(), Usage_Ok(), and Wait_For_Ack().

Definition at line 409 of file DaVinci.h.

Referenced by DaVinci(), Graph_End(), Node_Begin(), and Out_Edge().

Definition at line 410 of file DaVinci.h.

Referenced by DaVinci(), Usage_Error(), and Usage_Ok().

Definition at line 411 of file DaVinci.h.

Referenced by DaVinci(), Graph_Begin(), New_Node(), Node_Begin(), and Update_Begin().

pid_t DaVinci::_pid [private]

Definition at line 413 of file DaVinci.h.

Referenced by DaVinci(), and Kill_Davinci().

INT DaVinci::_contex [private]

Definition at line 414 of file DaVinci.h.

Referenced by DaVinci(), Event_Loop(), and Menu_Basic_Do().

std::queue< EVENT_T > DaVinci::_event_q_socket [static, private]

Definition at line 415 of file DaVinci.h.

Referenced by Event_Loop(), and Wait_For_Ack().

INT DaVinci::_tcp_socket = 0 [static, private]

Definition at line 416 of file DaVinci.h.

Referenced by DaVinci(), Event_Loop(), and ~DaVinci().

INT DaVinci::_davinci_count = 0 [static, private]

Definition at line 417 of file DaVinci.h.

Referenced by DaVinci(), ~DaVinci(), and DaVinci::IO::~IO().

INT DaVinci::_contex_count = 0 [static, private]

Definition at line 418 of file DaVinci.h.

Referenced by DaVinci(), and Event_Loop().

Definition at line 419 of file DaVinci.h.

Referenced by DaVinci(), and Event_Loop().

INT DaVinci::_current_contex = -1 [static, private]

Definition at line 420 of file DaVinci.h.

Referenced by Event_Loop(), and Wait_For_Ack().

bool DaVinci::_use_socket = false [static, private]


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

Generated on Wed Apr 8 16:34:33 2009 for Open64 by  doxygen 1.5.6