NetSim Source Code Help v14.4
All 13 Components
 
Loading...
Searching...
No Matches
MetricsWriter.h
1#pragma once
2
3typedef enum enu_node_type
4{
5 MetricsNode_Menu,
6 MetricsNode_Table,
7 MetricsNode_Text,
8 MetricsNode_Link,
9 MetricsNode_Plot,
10 MetricsNode_Button,
11}METRICS_NODE;
12
13typedef enum enum_writer_position
14{
15 WriterPosition_Current,
16 WriterPosition_Last,
17 WriterPosition_Choose,
18}WRITER_POSITION;
19
20#ifndef _METRICS_NODE_CODE_
21typedef void* PMETRICSNODE;
22#else
23typedef struct stru_metrics_node METRICSNODE, *PMETRICSNODE;
24#endif
25
26#ifndef _NETSIM_METRICS_WRITER_CODE_
27typedef void* PMETRICSWRITER;
28#else
29typedef struct stru_metrics_writer METRICSWRITER, *PMETRICSWRITER;
30#endif
31
32/*Initialize a new metrics node.
33 Input:
34 1. Metrics node type
35 2. Name of the node
36 3. Second argument
37 1. NULL in case of text and table
38 2. onClick reference in case of link and button
39 3. data_file_name in case of plot
40*/
41_declspec(dllexport) PMETRICSNODE init_metrics_node(METRICS_NODE type, char* name, char* secondarg);
42//Delete/Free the metrics node.
43_declspec(dllexport) void delete_metrics_node(PMETRICSNODE node);
44//Add table heading to a metrics table.
45_declspec(dllexport) void add_table_heading(PMETRICSNODE node, char* name, bool isShow, int subheadingcount, ...);
46//Add table heading without subheading
47_declspec(dllexport) void add_table_heading_special(PMETRICSNODE node, char* heading);
48//Add formatted table row. Used for text row.
49_declspec(dllexport) void add_table_row_formatted(bool issame, PMETRICSNODE node, char* format, ...);
50//Used to add a node to table
51_declspec(dllexport) void add_table_row(bool issame, PMETRICSNODE node, PMETRICSNODE row);
52
53//Add a metrics node to menu item
54_declspec(dllexport) void add_node_to_menu(PMETRICSNODE menu, PMETRICSNODE node);
55
56//Write metrics node to xml file
57_declspec(dllexport) void write_metrics_node(PMETRICSWRITER writer, WRITER_POSITION writerPosition, char* writer_name, PMETRICSNODE node);
58
59/**Metrics writer**/
60//Initialize the metrics writer.
61_declspec(dllexport) PMETRICSWRITER init_xmlwriter(char* uri,char* name);
62//Create new metrics writer position
63_declspec(dllexport) void create_new_metrics_writer(PMETRICSWRITER writer, char* name);
64//Add an element to xml file
65_declspec(dllexport) void add_element(PMETRICSWRITER writer,
66 WRITER_POSITION writerPosition,
67 char* writer_name,
68 char* name,
69 void(*fncall)(PMETRICSWRITER writer, WRITER_POSITION writerPosition, char* writer_name, int argc, char* argv[]),
70 int argc,
71 char* argv[]);
72//Close the xml writer
73_declspec(dllexport) void close_xmlwriter(PMETRICSWRITER metricsWriter);
74//Add an attribute to xml file
75_declspec(dllexport) void add_attribute(PMETRICSWRITER writer, WRITER_POSITION writerPosition, char* writer_name, char* name, char* format, ...);
76
77