digraph "tds71_submit_prepexec"
{
 // LATEX_PDF_SIZE
  bgcolor="transparent";
  edge [fontname=Helvetica,fontsize=10,labelfontname=Helvetica,labelfontsize=10];
  node [fontname=Helvetica,fontsize=10,shape=box,height=0.2,width=0.4];
  rankdir="LR";
  Node1 [id="Node000001",label="tds71_submit_prepexec",height=0.2,width=0.4,color="gray40", fillcolor="grey60", style="filled", fontcolor="black",tooltip="Creates a temporary stored procedure in the server and execute it."];
  Node1 -> Node2 [id="edge1_Node000001_Node000002",color="steelblue1",style="solid",tooltip=" "];
  Node2 [id="Node000002",label="tds7_put_query_params",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00578.html#ga6e42b4a1d1d3898229ea2fe4afc2ecec",tooltip="Output params types and query (required by sp_prepare/sp_executesql/sp_prepexec)"];
  Node2 -> Node3 [id="edge2_Node000002_Node000003",color="steelblue1",style="solid",tooltip=" "];
  Node3 [id="Node000003",label="tds_count_placeholders\l_ucs2le",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00578.html#ga0cd19215e9169ea299a6c9cbf5b2fb60",tooltip="Count the number of placeholders ('?') in a query."];
  Node3 -> Node4 [id="edge3_Node000003_Node000004",color="steelblue1",style="solid",tooltip=" "];
  Node4 [id="Node000004",label="tds_next_placeholder\l_ucs2le",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00578.html#gaaa97f8535a2babe642024a0744d271d5",tooltip="Found the next placeholder (? or @param) in a string."];
  Node2 -> Node4 [id="edge4_Node000002_Node000004",color="steelblue1",style="solid",tooltip=" "];
  Node2 -> Node7 [id="edge5_Node000002_Node000007",color="steelblue1",style="solid",tooltip=" "];
  Node7 [id="Node000007",label="tds_put_string",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00579.html#ga1fcaf8d488cc1390f106ce3ad0bf37b4",tooltip="Output a string to wire automatic translate string to unicode if needed."];
  Node7 -> Node8 [id="edge6_Node000007_Node000008",color="steelblue1",style="solid",tooltip=" "];
  Node8 [id="Node000008",label="tds_convert_stream",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a01459.html#a9d8eb43a81ff58ab423dce0ce95b9564",tooltip="Reads and writes from a stream converting characters."];
  Node8 -> Node9 [id="edge7_Node000008_Node000009",color="steelblue1",style="solid",tooltip=" "];
  Node9 [id="Node000009",label="tds_iconv",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00576.html#ga87db49044919f1bc84c0ff5e9ab00304",tooltip="Wrapper around iconv(3)."];
  Node7 -> Node12 [id="edge8_Node000007_Node000012",color="steelblue1",style="solid",tooltip=" "];
  Node12 [id="Node000012",label="tds_dataout_stream_init",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a01459.html#aa038a9125979f8f0915dbd53cbf27e5a",tooltip="Initialize a data output stream."];
  Node7 -> Node14 [id="edge9_Node000007_Node000014",color="steelblue1",style="solid",tooltip=" "];
  Node14 [id="Node000014",label="tds_staticin_stream_init",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a01459.html#aa9e1e45f0305622dd6aed9f8fe158581",tooltip="Initialize an input stream for read from a static allocated buffer."];
  Node1 -> Node16 [id="edge10_Node000001_Node000016",color="steelblue1",style="solid",tooltip=" "];
  Node16 [id="Node000016",label="tds7_write_param_def\l_from_query",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00578.html#ga24345856c16b15aa3e84459c2f551320",tooltip="Write string with parameters definition, useful for TDS7+."];
  Node16 -> Node3 [id="edge11_Node000016_Node000003",color="steelblue1",style="solid",tooltip=" "];
  Node16 -> Node17 [id="edge12_Node000016_Node000017",color="steelblue1",style="solid",tooltip=" "];
  Node17 [id="Node000017",label="tds_freeze_abort",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00579.html#ga7274d9c5dc75c58bb7d1f1c29e03a73e",tooltip="Discard all data written after the freeze."];
  Node16 -> Node18 [id="edge13_Node000016_Node000018",color="steelblue1",style="solid",tooltip=" "];
  Node18 [id="Node000018",label="tds_freeze_close_len",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00579.html#ga2660b893ae2bf36fe1b63b354e748bad",tooltip="Stop keeping data for this specific freeze."];
  Node16 -> Node19 [id="edge14_Node000016_Node000019",color="steelblue1",style="solid",tooltip=" "];
  Node19 [id="Node000019",label="tds_freeze_written",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00579.html#ga528cc96da09c11bc2930daae64e33e83",tooltip="Compute how many bytes has been written from freeze."];
  Node16 -> Node20 [id="edge15_Node000016_Node000020",color="steelblue1",style="solid",tooltip=" "];
  Node20 [id="Node000020",label="tds_get_column_declaration",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00578.html#ga50d62edeb2a432e2dc668263f3f958ff",tooltip="Return declaration for column (like \"varchar(20)\")."];
  Node20 -> Node21 [id="edge16_Node000020_Node000021",color="steelblue1",style="solid",tooltip=" "];
  Node21 [id="Node000021",label="tds_fix_column_size",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00578.html#ga440f0f469afad1eac4c008979873ccdd",tooltip="Get column size for wire."];
  Node16 -> Node7 [id="edge17_Node000016_Node000007",color="steelblue1",style="solid",tooltip=" "];
  Node1 -> Node22 [id="edge18_Node000001_Node000022",color="steelblue1",style="solid",tooltip=" "];
  Node22 [id="Node000022",label="tds_alloc_dynamic",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00577.html#ga69559de43b47f4a9e2eecc7a56527444",tooltip="Allocate a dynamic statement."];
  Node22 -> Node23 [id="edge19_Node000022_Node000023",color="steelblue1",style="solid",tooltip=" "];
  Node23 [id="Node000023",label="tds_get_dynid",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00577.html#ga93503e64091b51add0801abebe22abf4",tooltip="Get an id for dynamic query based on TDS information."];
  Node22 -> Node24 [id="edge20_Node000022_Node000024",color="steelblue1",style="solid",tooltip=" "];
  Node24 [id="Node000024",label="tds_lookup_dynamic",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00580.html#ga4a45cadd06ae1b886459dcc1f8e482c6",tooltip="Finds a dynamic given string id."];
  Node1 -> Node25 [id="edge21_Node000001_Node000025",color="steelblue1",style="solid",tooltip=" "];
  Node25 [id="Node000025",label="tds_convert_string",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00578.html#gad5b76c688898b86984d09628f030d01c",tooltip="Convert a string in an allocated buffer."];
  Node25 -> Node9 [id="edge22_Node000025_Node000009",color="steelblue1",style="solid",tooltip=" "];
  Node1 -> Node17 [id="edge23_Node000001_Node000017",color="steelblue1",style="solid",tooltip=" "];
  Node1 -> Node26 [id="edge24_Node000001_Node000026",color="steelblue1",style="solid",tooltip=" "];
  Node26 [id="Node000026",label="tds_freeze_close",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00579.html#ga633f62fb8e5310abfa42c02fba9c6500",tooltip="Stop keeping data for this specific freeze."];
  Node26 -> Node18 [id="edge25_Node000026_Node000018",color="steelblue1",style="solid",tooltip=" "];
  Node26 -> Node19 [id="edge26_Node000026_Node000019",color="steelblue1",style="solid",tooltip=" "];
  Node1 -> Node27 [id="edge27_Node000001_Node000027",color="steelblue1",style="solid",tooltip=" "];
  Node27 [id="Node000027",label="tds_put_data",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00578.html#ga9fcc0a3932dcad530511395ef8a767fb",tooltip="Write data to wire."];
  Node1 -> Node28 [id="edge28_Node000001_Node000028",color="steelblue1",style="solid",tooltip=" "];
  Node28 [id="Node000028",label="tds_put_data_info",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00578.html#gafd74652c4722ddce4d642cc4209449d4",tooltip="Put data information to wire."];
  Node28 -> Node29 [id="edge29_Node000028_Node000029",color="steelblue1",style="solid",tooltip=" "];
  Node29 [id="Node000029",label="tds_dstr_cstr",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00581.html#gac536f0e4d77d3cff5702719362ec1766",tooltip="Returns a C version (NUL terminated string) of dstr."];
  Node28 -> Node30 [id="edge30_Node000028_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node30 [id="Node000030",label="tds_dstr_len",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00581.html#ga396f139e4f886ac1b224a735138e73dd",tooltip="Returns the length of the string in bytes."];
  Node28 -> Node18 [id="edge31_Node000028_Node000018",color="steelblue1",style="solid",tooltip=" "];
  Node28 -> Node19 [id="edge32_Node000028_Node000019",color="steelblue1",style="solid",tooltip=" "];
  Node28 -> Node7 [id="edge33_Node000028_Node000007",color="steelblue1",style="solid",tooltip=" "];
  Node1 -> Node31 [id="edge34_Node000001_Node000031",color="steelblue1",style="solid",tooltip=" "];
  Node31 [id="Node000031",label="tds_query_flush_packet",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00578.html#gada27f4cfce925240ad33b71b63ca692d",tooltip="Flush query packet."];
  Node31 -> Node32 [id="edge35_Node000031_Node000032",color="steelblue1",style="solid",tooltip=" "];
  Node32 [id="Node000032",label="tds_flush_packet",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00579.html#ga5feb53554e8917a81bbbc332163a61fb",tooltip="Flush packet to server."];
  Node1 -> Node33 [id="edge36_Node000001_Node000033",color="steelblue1",style="solid",tooltip=" "];
  Node33 [id="Node000033",label="tds_release_dynamic",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00577.html#gabf2fdb0def5388508602ee7dd2f49506",tooltip="Frees dynamic statement."];
  Node33 -> Node34 [id="edge37_Node000033_Node000034",color="steelblue1",style="solid",tooltip=" "];
  Node34 [id="Node000034",label="tds_detach_results",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00577.html#ga1d60bf443e274797b1d1a9e7418ab962",tooltip="Detach result info from it current socket."];
  Node33 -> Node35 [id="edge38_Node000033_Node000035",color="steelblue1",style="solid",tooltip=" "];
  Node35 [id="Node000035",label="tds_free_input_params",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00577.html#gabdc5fee73b22345c02ab894e49ad7f95",tooltip="Frees all allocated input parameters of a dynamic statement."];
  Node1 -> Node36 [id="edge39_Node000001_Node000036",color="steelblue1",style="solid",tooltip=" "];
  Node36 [id="Node000036",label="tds_set_cur_dyn",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00578.html#gae8b7db85af16701fc0604eb117cbd4e4",tooltip="Set current dynamic."];
  Node1 -> Node37 [id="edge40_Node000001_Node000037",color="steelblue1",style="solid",tooltip=" "];
  Node37 [id="Node000037",label="tds_start_query",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00578.html#ga0da385231bfa3dc49377e1fb2bea2c07",tooltip="Start query packet of a given type."];
  Node37 -> Node38 [id="edge41_Node000037_Node000038",color="steelblue1",style="solid",tooltip=" "];
  Node38 [id="Node000038",label="tds_start_query_head",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00578.html#ga9ad2e6defce530a8778791cce0166ccd",tooltip="Start query packet of a given type."];
  Node38 -> Node18 [id="edge42_Node000038_Node000018",color="steelblue1",style="solid",tooltip=" "];
  Node38 -> Node19 [id="edge43_Node000038_Node000019",color="steelblue1",style="solid",tooltip=" "];
  Node38 -> Node7 [id="edge44_Node000038_Node000007",color="steelblue1",style="solid",tooltip=" "];
}
