204 lines
64 KiB
HTML
204 lines
64 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
<meta name="generator" content="Doxygen 1.8.11"/>
|
|
<title>Kinetis Bootloader Host: ConversionController.h Source File</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript" src="navtreedata.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript">
|
|
$(document).ready(initResizable);
|
|
$(window).load(resizeHeight);
|
|
</script>
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<script type="text/javascript">
|
|
$(document).ready(function() { init_search(); });
|
|
</script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr style="height: 56px;">
|
|
<td id="projectlogo"><img alt="Logo" src="nxp_logo_small.png"/></td>
|
|
<td id="projectalign" style="padding-left: 0.5em;">
|
|
<div id="projectname">Kinetis Bootloader Host
|
|
 <span id="projectnumber">2.0.0</span>
|
|
</div>
|
|
<div id="projectbrief">Host Tools for Kinetis devices</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.8.11 -->
|
|
<script type="text/javascript">
|
|
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
|
</script>
|
|
<div id="navrow1" class="tabs">
|
|
<ul class="tablist">
|
|
<li><a href="index.html"><span>Introduction</span></a></li>
|
|
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
|
<li><a href="modules.html"><span>Modules</span></a></li>
|
|
<li>
|
|
<div id="MSearchBox" class="MSearchBoxInactive">
|
|
<span class="left">
|
|
<img id="MSearchSelect" src="search/mag_sel.png"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
alt=""/>
|
|
<input type="text" id="MSearchField" value="Search" accesskey="S"
|
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
|
</span><span class="right">
|
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
|
|
</span>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
$(document).ready(function(){initNavTree('_conversion_controller_8h_source.html','');});
|
|
</script>
|
|
<div id="doc-content">
|
|
<!-- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
</div>
|
|
|
|
<!-- iframe showing the search results (closed by default) -->
|
|
<div id="MSearchResultsWindow">
|
|
<iframe src="javascript:void(0)" frameborder="0"
|
|
name="MSearchResults" id="MSearchResults">
|
|
</iframe>
|
|
</div>
|
|
|
|
<div class="header">
|
|
<div class="headertitle">
|
|
<div class="title">ConversionController.h</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * File: ConversionController.h</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * Copyright (c) Freescale Semiconductor, Inc. All rights reserved.</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * See included license file for license details.</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> */</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="preprocessor">#if !defined(_ConversionController_h_)</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="preprocessor">#define _ConversionController_h_</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> </div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="preprocessor">#include <iostream></span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="preprocessor">#include <fstream></span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="preprocessor">#include <string></span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="preprocessor">#include <stdexcept></span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="preprocessor">#include "smart_ptr.h"</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="preprocessor">#include "ElftosbLexer.h"</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="preprocessor">#include "ElftosbAST.h"</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#include "EvalContext.h"</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#include "Value.h"</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor">#include "SourceFile.h"</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "Operation.h"</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "DataSource.h"</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include "DataTarget.h"</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include "OutputSection.h"</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include "BootImage.h"</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include "OptionDictionary.h"</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include "BootImageGenerator.h"</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "Keyblob.h"</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">namespace </span><a class="code" href="namespaceelftosb.html">elftosb</a></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> {</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html"> 48</a></span> <span class="keyword">class </span><a class="code" href="classelftosb_1_1_conversion_controller.html">ConversionController</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_option_dictionary.html">OptionDictionary</a>, <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_eval_context_1_1_source_file_manager.html">EvalContext::SourceFileManager</a></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> {</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <a class="code" href="classelftosb_1_1_conversion_controller.html#ada34cb63163e9dd254471d37c3b8fe35">ConversionController</a>();</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="keyword">virtual</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#a4b194e664f5a3017941113c7ff9f0ac1">~ConversionController</a>();</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> </div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#adfe659b2eb45fd7d51603431d1da0531">setCommandFilePath</a>(<span class="keyword">const</span> std::string &path);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#aeb411fd22b4fe550651159bc85f7a436">addExternalFilePath</a>(<span class="keyword">const</span> std::string &path);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#af8549b36d95bdc61929f4ad7ad18997c">run</a>();</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <a class="code" href="classelftosb_1_1_boot_image.html">BootImage</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#a96b363bd83e579f7d9e3d0ebb13859e3">generateOutput</a>(<a class="code" href="classelftosb_1_1_boot_image_generator.html">BootImageGenerator</a> *generator);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#a70319994f6b274a765627b8ab6b2b508">hasSourceFile</a>(<span class="keyword">const</span> std::string &name);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span> </div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <span class="keyword">virtual</span> <a class="code" href="classelftosb_1_1_source_file.html">SourceFile</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#a22ac8c0dbe4df90d45ace08ef6c55657">getSourceFile</a>(<span class="keyword">const</span> std::string &name);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span> </div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keyword">virtual</span> <a class="code" href="classelftosb_1_1_source_file.html">SourceFile</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#a7fce40239e8be143dead0b506afc3e49">getDefaultSourceFile</a>();</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#a5effa854cadf46336060593f9cd45a90"> 88</a></span>  <span class="keyword">inline</span> <a class="code" href="classelftosb_1_1_eval_context.html">EvalContext</a> &<a class="code" href="classelftosb_1_1_conversion_controller.html#a5effa854cadf46336060593f9cd45a90">getEvalContext</a>() { <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#a7d3f0e545baec2893568e5bf68eed310">m_context</a>; }</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keyword">protected</span>:</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#a0d4c92baf308f84152f1bcba4a606583">parseCommandFile</a>();</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#af9d97007fa64feaf2e947d4322a9267e">processOptions</a>(<a class="code" href="classelftosb_1_1_list_a_s_t_node.html">ListASTNode</a> *options);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#aaa468ab83633871567e5190ff62a35f7">processConstants</a>(<a class="code" href="classelftosb_1_1_list_a_s_t_node.html">ListASTNode</a> *constants);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#a98b5fa4a578cc79d6b9eddcc192e8491">processSources</a>(<a class="code" href="classelftosb_1_1_list_a_s_t_node.html">ListASTNode</a> *sources);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#a5eda84b94dfeea7b7e2144d88b7b4b9a">processKeyblob</a>(<a class="code" href="classelftosb_1_1_expr_a_s_t_node.html">ExprASTNode</a> *idExpr, <a class="code" href="classelftosb_1_1_list_a_s_t_node.html">ListASTNode</a> *entires);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keywordtype">void</span> processSections(<a class="code" href="classelftosb_1_1_list_a_s_t_node.html">ListASTNode</a> *sections);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <a class="code" href="classelftosb_1_1_output_section.html">OutputSection</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#a22b56bc362aac01ba477d8611b41106a">convertDataSection</a>(<a class="code" href="classelftosb_1_1_data_section_contents_a_s_t_node.html">DataSectionContentsASTNode</a> *dataSection,</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  uint32_t sectionID,</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <a class="code" href="classelftosb_1_1_option_dictionary.html">OptionDictionary</a> *optionsDict);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <a class="code" href="classelftosb_1_1_operation_sequence.html">OperationSequence</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#ad8e901fbaafddbeb2dee816dc079163e">convertStatementList</a>(<a class="code" href="classelftosb_1_1_list_a_s_t_node.html">ListASTNode</a> *statements);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  <a class="code" href="classelftosb_1_1_operation_sequence.html">OperationSequence</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#a8df833e6e93d3b17b929d2cced6920bb">convertOneStatement</a>(<a class="code" href="classelftosb_1_1_statement_a_s_t_node.html">StatementASTNode</a> *statement);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  <a class="code" href="classelftosb_1_1_operation_sequence.html">OperationSequence</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#ad9b657c1b30e68f496ece044a9a79307">convertLoadStatement</a>(<a class="code" href="classelftosb_1_1_load_statement_a_s_t_node.html">LoadStatementASTNode</a> *statement);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  <a class="code" href="classelftosb_1_1_operation_sequence.html">OperationSequence</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#a1bf67c5c92ed56c95f0d2f0cae656f6a">convertCallStatement</a>(<a class="code" href="classelftosb_1_1_call_statement_a_s_t_node.html">CallStatementASTNode</a> *statement);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <a class="code" href="classelftosb_1_1_operation_sequence.html">OperationSequence</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#ae6aa2996ba397329a0a7a7e1d110c968">convertFromStatement</a>(<a class="code" href="classelftosb_1_1_from_statement_a_s_t_node.html">FromStatementASTNode</a> *statement);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <a class="code" href="classelftosb_1_1_operation_sequence.html">OperationSequence</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#aa2da6c6d7f1b9e1fe2f63857b4648ee9">convertModeStatement</a>(<a class="code" href="classelftosb_1_1_mode_statement_a_s_t_node.html">ModeStatementASTNode</a> *statement);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <a class="code" href="classelftosb_1_1_operation_sequence.html">OperationSequence</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#a4eed30bbcd1ff42ba876b5571d284090">convertResetStatement</a>(<a class="code" href="classelftosb_1_1_reset_statement_a_s_t_node.html">ResetStatementASTNode</a> *statement);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  <a class="code" href="classelftosb_1_1_operation_sequence.html">OperationSequence</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#ac3637d147ed10fec58d1be64bce67254">convertIfStatement</a>(<a class="code" href="classelftosb_1_1_if_statement_a_s_t_node.html">IfStatementASTNode</a> *statement);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <a class="code" href="classelftosb_1_1_operation_sequence.html">OperationSequence</a> *convertEraseStatement(<a class="code" href="classelftosb_1_1_erase_statement_a_s_t_node.html">EraseStatementASTNode</a> *statement);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  <a class="code" href="classelftosb_1_1_operation_sequence.html">OperationSequence</a> *convertMemEnableStatement(<a class="code" href="classelftosb_1_1_mem_enable_statement_a_s_t_node.html">MemEnableStatementASTNode</a> *statement);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <a class="code" href="classelftosb_1_1_operation_sequence.html">OperationSequence</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#a1e5dd56ecd1974c10e43dfd2dd20972b">convertKeywrapStatement</a>(<a class="code" href="classelftosb_1_1_keywrap_statement_a_s_t_node.html">KeywrapStatementASTNode</a> *statement);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <a class="code" href="classelftosb_1_1_operation_sequence.html">OperationSequence</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#a6f59d932eac25fc09ac8442e1f234aa5">convertEncryptStatement</a>(<a class="code" href="classelftosb_1_1_encrypt_statement_a_s_t_node.html">EncryptStatementASTNode</a> *statement);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#af4f4d3c44b1be9dd0051a7899e1d9a12">handleMessageStatement</a>(<a class="code" href="classelftosb_1_1_message_statement_a_s_t_node.html">MessageStatementASTNode</a> *statement);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span> </div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <a class="code" href="classelftosb_1_1_value.html">Value</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#aef6baa87ec2f5430fc1989c24a3b8ffc">convertAssignmentNodeToValue</a>(<a class="code" href="classelftosb_1_1_a_s_t_node.html">ASTNode</a> *node, std::string &ident);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <a class="code" href="classelftosb_1_1_source_file.html">SourceFile</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#a3b4f740adcce85a4044650523604c922">getSourceFromName</a>(std::string *sourceName, <span class="keywordtype">int</span> line);</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  <a class="code" href="classelftosb_1_1_data_source.html">DataSource</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#ada4209b5749ef668ba65b2893a7e9732">createSourceFromNode</a>(<a class="code" href="classelftosb_1_1_a_s_t_node.html">ASTNode</a> *dataNode);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  <a class="code" href="classelftosb_1_1_data_target.html">DataTarget</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#ad479b0599759a9bc9198e3a5c4a4287e">createTargetFromNode</a>(<a class="code" href="classelftosb_1_1_a_s_t_node.html">ASTNode</a> *targetNode);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  std::string *<a class="code" href="classelftosb_1_1_conversion_controller.html#a515fa552c78029c448b849d78f6b23e2">substituteVariables</a>(<span class="keyword">const</span> std::string *message);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  <a class="code" href="classelftosb_1_1_data_source.html">DataSource</a> *createIVTDataSource(<a class="code" href="classelftosb_1_1_i_v_t_const_a_s_t_node.html">IVTConstASTNode</a> *ivtNode);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#a6d7e4b970d586cc1467a5d7d4d0e55e5">testLexer</a>(<a class="code" href="classelftosb_1_1_elftosb_lexer.html">ElftosbLexer</a> &lexer);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_conversion_controller.html#a63838abcab2df44563db15fc2ca88761">printIntConstExpr</a>(<span class="keyword">const</span> std::string &ident, <a class="code" href="classelftosb_1_1_int_const_expr_a_s_t_node.html">IntConstExprASTNode</a> *expr);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span> </div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keyword">protected</span>:</div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#a20c47fb6fe671f8d72362581fbf3b365"> 137</a></span>  <span class="keyword">typedef</span> std::map<std::string, SourceFile *> <a class="code" href="classelftosb_1_1_conversion_controller.html#a20c47fb6fe671f8d72362581fbf3b365">source_map_t</a>; </div><div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#af6d43d6747b5d190321147739e61a079"> 138</a></span>  <span class="keyword">typedef</span> std::vector<std::string> <a class="code" href="classelftosb_1_1_conversion_controller.html#af6d43d6747b5d190321147739e61a079">path_vector_t</a>; </div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#aa7d9f8d9865d516ec83bd08428ec56fe"> 139</a></span>  <span class="keyword">typedef</span> std::vector<OutputSection *> <a class="code" href="classelftosb_1_1_conversion_controller.html#aa7d9f8d9865d516ec83bd08428ec56fe">section_vector_t</a>; </div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#a195c0a0bd872f22443027317e1fa0ec3"> 140</a></span>  <span class="keyword">typedef</span> std::vector<std::string> <a class="code" href="classelftosb_1_1_conversion_controller.html#a195c0a0bd872f22443027317e1fa0ec3">source_name_vector_t</a>; </div><div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#a536efd2c766d5d34c71e48c4955bb9c3"> 141</a></span>  <span class="keyword">typedef</span> std::vector<Keyblob *> <a class="code" href="classelftosb_1_1_conversion_controller.html#a536efd2c766d5d34c71e48c4955bb9c3">keyblob_vector_t</a>; </div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span> </div><div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#af84f4ce40e3f0e89df0d05897ae22807"> 143</a></span>  <a class="code" href="group__smart__pointer.html">smart_ptr<std::string></a> <a class="code" href="classelftosb_1_1_conversion_controller.html#af84f4ce40e3f0e89df0d05897ae22807">m_commandFilePath</a>; </div><div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#ada74738575f76dec7d429a0ee394084f"> 144</a></span>  <a class="code" href="group__smart__pointer.html#classsmart__ptr">smart_ptr<CommandFileASTNode></a> <a class="code" href="classelftosb_1_1_conversion_controller.html#ada74738575f76dec7d429a0ee394084f">m_ast</a>; </div><div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#a7d3f0e545baec2893568e5bf68eed310"> 145</a></span>  <a class="code" href="classelftosb_1_1_eval_context.html">EvalContext</a> <a class="code" href="classelftosb_1_1_conversion_controller.html#a7d3f0e545baec2893568e5bf68eed310">m_context</a>; </div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#a9a4ed33ca258ea55bad725fa35f21592"> 146</a></span>  source_map_t <a class="code" href="classelftosb_1_1_conversion_controller.html#a9a4ed33ca258ea55bad725fa35f21592">m_sources</a>; </div><div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#a965fc2d7904361996f2de3eb18acd3c8"> 147</a></span>  path_vector_t <a class="code" href="classelftosb_1_1_conversion_controller.html#a965fc2d7904361996f2de3eb18acd3c8">m_externPaths</a>; </div><div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#afe52092ae5ca928c5108ddac28b4c871"> 148</a></span>  <a class="code" href="classelftosb_1_1_source_file.html">SourceFile</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#afe52092ae5ca928c5108ddac28b4c871">m_defaultSource</a>; </div><div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#ad82826037f5dd39335c17a012f942dd0"> 149</a></span>  section_vector_t <a class="code" href="classelftosb_1_1_conversion_controller.html#ad82826037f5dd39335c17a012f942dd0">m_outputSections</a>; </div><div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#a285950f469dfb162047259a200480531"> 150</a></span>  source_name_vector_t <a class="code" href="classelftosb_1_1_conversion_controller.html#a285950f469dfb162047259a200480531">m_failedSources</a>; </div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#af1370e1ebe76fccacdf2c58c0b216419"> 151</a></span>  keyblob_vector_t <a class="code" href="classelftosb_1_1_conversion_controller.html#af1370e1ebe76fccacdf2c58c0b216419">m_keyblobs</a>; </div><div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#abc28485f77c40cf315df1ebe8a86f497"> 152</a></span>  <a class="code" href="classelftosb_1_1_keyblob.html">Keyblob</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#abc28485f77c40cf315df1ebe8a86f497">m_keywrapKeyblob</a>; </div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="classelftosb_1_1_conversion_controller.html#a4391388367418538188c7d544328d993"> 153</a></span>  <a class="code" href="classelftosb_1_1_keyblob.html">Keyblob</a> *<a class="code" href="classelftosb_1_1_conversion_controller.html#a4391388367418538188c7d544328d993">m_encryptKeyblob</a>; </div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span> };</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span> </div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keyword">extern</span> <span class="keywordtype">bool</span> g_enableHABSupport;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span> </div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span> }; <span class="comment">// namespace elftosb</span></div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span> </div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="preprocessor">#endif // _ConversionController_h_</span></div><div class="ttc" id="classelftosb_1_1_conversion_controller_html_ada74738575f76dec7d429a0ee394084f"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#ada74738575f76dec7d429a0ee394084f">elftosb::ConversionController::m_ast</a></div><div class="ttdeci">smart_ptr< CommandFileASTNode > m_ast</div><div class="ttdoc">Root of the abstract syntax tree. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:144</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_data_source_html"><div class="ttname"><a href="classelftosb_1_1_data_source.html">elftosb::DataSource</a></div><div class="ttdoc">Abstract base class for data sources. </div><div class="ttdef"><b>Definition:</b> apps/elftosb/common/DataSource.h:33</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a8df833e6e93d3b17b929d2cced6920bb"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a8df833e6e93d3b17b929d2cced6920bb">elftosb::ConversionController::convertOneStatement</a></div><div class="ttdeci">OperationSequence * convertOneStatement(StatementASTNode *statement)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:714</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a1e5dd56ecd1974c10e43dfd2dd20972b"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a1e5dd56ecd1974c10e43dfd2dd20972b">elftosb::ConversionController::convertKeywrapStatement</a></div><div class="ttdeci">OperationSequence * convertKeywrapStatement(KeywrapStatementASTNode *statement)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1042</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_operation_sequence_html"><div class="ttname"><a href="classelftosb_1_1_operation_sequence.html">elftosb::OperationSequence</a></div><div class="ttdoc">Ordered sequence of operations. </div><div class="ttdef"><b>Definition:</b> Operation.h:323</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_aaa468ab83633871567e5190ff62a35f7"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#aaa468ab83633871567e5190ff62a35f7">elftosb::ConversionController::processConstants</a></div><div class="ttdeci">void processConstants(ListASTNode *constants)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:269</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a7fce40239e8be143dead0b506afc3e49"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a7fce40239e8be143dead0b506afc3e49">elftosb::ConversionController::getDefaultSourceFile</a></div><div class="ttdeci">virtual SourceFile * getDefaultSourceFile()</div><div class="ttdoc">Returns the default source file, or NULL if none is set. </div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:88</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_int_const_expr_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_int_const_expr_a_s_t_node.html">elftosb::IntConstExprASTNode</a></div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:329</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_af9d97007fa64feaf2e947d4322a9267e"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#af9d97007fa64feaf2e947d4322a9267e">elftosb::ConversionController::processOptions</a></div><div class="ttdeci">void processOptions(ListASTNode *options)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:236</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_encrypt_statement_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_encrypt_statement_a_s_t_node.html">elftosb::EncryptStatementASTNode</a></div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:1420</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_ac3637d147ed10fec58d1be64bce67254"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#ac3637d147ed10fec58d1be64bce67254">elftosb::ConversionController::convertIfStatement</a></div><div class="ttdeci">OperationSequence * convertIfStatement(IfStatementASTNode *statement)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1180</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_statement_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_statement_a_s_t_node.html">elftosb::StatementASTNode</a></div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:882</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_af4f4d3c44b1be9dd0051a7899e1d9a12"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#af4f4d3c44b1be9dd0051a7899e1d9a12">elftosb::ConversionController::handleMessageStatement</a></div><div class="ttdeci">void handleMessageStatement(MessageStatementASTNode *statement)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1403</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a536efd2c766d5d34c71e48c4955bb9c3"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a536efd2c766d5d34c71e48c4955bb9c3">elftosb::ConversionController::keyblob_vector_t</a></div><div class="ttdeci">std::vector< Keyblob * > keyblob_vector_t</div><div class="ttdoc">List of keyblobs. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:141</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_i_v_t_const_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_i_v_t_const_a_s_t_node.html">elftosb::IVTConstASTNode</a></div><div class="ttdoc">Node for a constant IVT structure as used by HAB4. </div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:691</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_ad479b0599759a9bc9198e3a5c4a4287e"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#ad479b0599759a9bc9198e3a5c4a4287e">elftosb::ConversionController::createTargetFromNode</a></div><div class="ttdeci">DataTarget * createTargetFromNode(ASTNode *targetNode)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1737</div></div>
|
|
<div class="ttc" id="group__smart__pointer_html"><div class="ttname"><a href="group__smart__pointer.html">smart_ptr< std::string ></a></div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a96b363bd83e579f7d9e3d0ebb13859e3"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a96b363bd83e579f7d9e3d0ebb13859e3">elftosb::ConversionController::generateOutput</a></div><div class="ttdeci">BootImage * generateOutput(BootImageGenerator *generator)</div><div class="ttdoc">Uses a BootImageGenerator object to create the final output boot image. </div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1536</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a70319994f6b274a765627b8ab6b2b508"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a70319994f6b274a765627b8ab6b2b508">elftosb::ConversionController::hasSourceFile</a></div><div class="ttdeci">virtual bool hasSourceFile(const std::string &name)</div><div class="ttdoc">Returns true if a source file with the name name exists. </div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:73</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_from_statement_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_from_statement_a_s_t_node.html">elftosb::FromStatementASTNode</a></div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:1394</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_adfe659b2eb45fd7d51603431d1da0531"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#adfe659b2eb45fd7d51603431d1da0531">elftosb::ConversionController::setCommandFilePath</a></div><div class="ttdeci">void setCommandFilePath(const std::string &path)</div><div class="ttdoc">Specify the command file that controls the conversion process. </div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:60</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_if_statement_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_if_statement_a_s_t_node.html">elftosb::IfStatementASTNode</a></div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:900</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_aa7d9f8d9865d516ec83bd08428ec56fe"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#aa7d9f8d9865d516ec83bd08428ec56fe">elftosb::ConversionController::section_vector_t</a></div><div class="ttdeci">std::vector< OutputSection * > section_vector_t</div><div class="ttdoc">List of output sections. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:139</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a965fc2d7904361996f2de3eb18acd3c8"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a965fc2d7904361996f2de3eb18acd3c8">elftosb::ConversionController::m_externPaths</a></div><div class="ttdeci">path_vector_t m_externPaths</div><div class="ttdoc">Paths provided on the command line by the user. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:147</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_af6d43d6747b5d190321147739e61a079"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#af6d43d6747b5d190321147739e61a079">elftosb::ConversionController::path_vector_t</a></div><div class="ttdeci">std::vector< std::string > path_vector_t</div><div class="ttdoc">List of file paths. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:138</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_option_dictionary_html"><div class="ttname"><a href="classelftosb_1_1_option_dictionary.html">elftosb::OptionDictionary</a></div><div class="ttdoc">Concrete implementation of OptionContext. </div><div class="ttdef"><b>Definition:</b> OptionDictionary.h:27</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_aa2da6c6d7f1b9e1fe2f63857b4648ee9"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#aa2da6c6d7f1b9e1fe2f63857b4648ee9">elftosb::ConversionController::convertModeStatement</a></div><div class="ttdeci">OperationSequence * convertModeStatement(ModeStatementASTNode *statement)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1127</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a22b56bc362aac01ba477d8611b41106a"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a22b56bc362aac01ba477d8611b41106a">elftosb::ConversionController::convertDataSection</a></div><div class="ttdeci">OutputSection * convertDataSection(DataSectionContentsASTNode *dataSection, uint32_t sectionID, OptionDictionary *optionsDict)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:590</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_af8549b36d95bdc61929f4ad7ad18997c"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#af8549b36d95bdc61929f4ad7ad18997c">elftosb::ConversionController::run</a></div><div class="ttdeci">void run()</div><div class="ttdoc">Process input files. </div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:115</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_afe52092ae5ca928c5108ddac28b4c871"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#afe52092ae5ca928c5108ddac28b4c871">elftosb::ConversionController::m_defaultSource</a></div><div class="ttdeci">SourceFile * m_defaultSource</div><div class="ttdoc">Source to use when one isn&#39;t provided. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:148</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_eval_context_html"><div class="ttname"><a href="classelftosb_1_1_eval_context.html">elftosb::EvalContext</a></div><div class="ttdoc">Context for evaluating AST tree and expressions. </div><div class="ttdef"><b>Definition:</b> EvalContext.h:28</div></div>
|
|
<div class="ttc" id="group__smart__pointer_html_classsmart__ptr"><div class="ttname"><a href="group__smart__pointer.html#classsmart__ptr">smart_ptr</a></div><div class="ttdoc">Simple, standard smart pointer class. </div><div class="ttdef"><b>Definition:</b> apps/elftosb/common/smart_ptr.h:18</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_message_statement_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_message_statement_a_s_t_node.html">elftosb::MessageStatementASTNode</a></div><div class="ttdoc">Statement to print a message to the elftosb user. </div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:1003</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a6d7e4b970d586cc1467a5d7d4d0e55e5"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a6d7e4b970d586cc1467a5d7d4d0e55e5">elftosb::ConversionController::testLexer</a></div><div class="ttdeci">void testLexer(ElftosbLexer &lexer)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1885</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_ad82826037f5dd39335c17a012f942dd0"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#ad82826037f5dd39335c17a012f942dd0">elftosb::ConversionController::m_outputSections</a></div><div class="ttdeci">section_vector_t m_outputSections</div><div class="ttdoc">List of output sections the user wants. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:149</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a0d4c92baf308f84152f1bcba4a606583"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a0d4c92baf308f84152f1bcba4a606583">elftosb::ConversionController::parseCommandFile</a></div><div class="ttdeci">void parseCommandFile()</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:176</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a285950f469dfb162047259a200480531"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a285950f469dfb162047259a200480531">elftosb::ConversionController::m_failedSources</a></div><div class="ttdeci">source_name_vector_t m_failedSources</div><div class="ttdoc">List of sources that failed to open successfully. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:150</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a98b5fa4a578cc79d6b9eddcc192e8491"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a98b5fa4a578cc79d6b9eddcc192e8491">elftosb::ConversionController::processSources</a></div><div class="ttdeci">void processSources(ListASTNode *sources)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:302</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a6f59d932eac25fc09ac8442e1f234aa5"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a6f59d932eac25fc09ac8442e1f234aa5">elftosb::ConversionController::convertEncryptStatement</a></div><div class="ttdeci">OperationSequence * convertEncryptStatement(EncryptStatementASTNode *statement)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1084</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_af1370e1ebe76fccacdf2c58c0b216419"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#af1370e1ebe76fccacdf2c58c0b216419">elftosb::ConversionController::m_keyblobs</a></div><div class="ttdeci">keyblob_vector_t m_keyblobs</div><div class="ttdoc">List of keyblobs the user defines. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:151</div></div>
|
|
<div class="ttc" id="namespaceelftosb_html"><div class="ttname"><a href="namespaceelftosb.html">elftosb</a></div><div class="ttdef"><b>Definition:</b> BootImage.h:13</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a20c47fb6fe671f8d72362581fbf3b365"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a20c47fb6fe671f8d72362581fbf3b365">elftosb::ConversionController::source_map_t</a></div><div class="ttdeci">std::map< std::string, SourceFile * > source_map_t</div><div class="ttdoc">Map from source name to object. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:137</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_source_file_html"><div class="ttname"><a href="classelftosb_1_1_source_file.html">elftosb::SourceFile</a></div><div class="ttdoc">Abstract base class for a source file containing executable code. </div><div class="ttdef"><b>Definition:</b> apps/elftosb/common/SourceFile.h:33</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_keywrap_statement_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_keywrap_statement_a_s_t_node.html">elftosb::KeywrapStatementASTNode</a></div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:1448</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_eval_context_1_1_source_file_manager_html"><div class="ttname"><a href="classelftosb_1_1_eval_context_1_1_source_file_manager.html">elftosb::EvalContext::SourceFileManager</a></div><div class="ttdoc">Abstract interface for a manager of source files. </div><div class="ttdef"><b>Definition:</b> EvalContext.h:34</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_data_target_html"><div class="ttname"><a href="classelftosb_1_1_data_target.html">elftosb::DataTarget</a></div><div class="ttdoc">Abstract base class for the target address or range of data. </div><div class="ttdef"><b>Definition:</b> apps/elftosb/common/DataTarget.h:34</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_value_html"><div class="ttname"><a href="classelftosb_1_1_value.html">elftosb::Value</a></div><div class="ttdoc">Abstract base class for values of arbitrary types. </div><div class="ttdef"><b>Definition:</b> apps/elftosb/common/Value.h:20</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_ae6aa2996ba397329a0a7a7e1d110c968"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#ae6aa2996ba397329a0a7a7e1d110c968">elftosb::ConversionController::convertFromStatement</a></div><div class="ttdeci">OperationSequence * convertFromStatement(FromStatementASTNode *statement)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1003</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a4eed30bbcd1ff42ba876b5571d284090"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a4eed30bbcd1ff42ba876b5571d284090">elftosb::ConversionController::convertResetStatement</a></div><div class="ttdeci">OperationSequence * convertResetStatement(ResetStatementASTNode *statement)</div><div class="ttdoc">Creates a Reset Operation object and returns an OperationSequence containing it. </div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1167</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_call_statement_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_call_statement_a_s_t_node.html">elftosb::CallStatementASTNode</a></div><div class="ttdoc">AST node for a call statement. </div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:1080</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_aef6baa87ec2f5430fc1989c24a3b8ffc"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#aef6baa87ec2f5430fc1989c24a3b8ffc">elftosb::ConversionController::convertAssignmentNodeToValue</a></div><div class="ttdeci">Value * convertAssignmentNodeToValue(ASTNode *node, std::string &ident)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:625</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_erase_statement_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_erase_statement_a_s_t_node.html">elftosb::EraseStatementASTNode</a></div><div class="ttdoc">Statement to insert a ROM_ERASE_CMD command. </div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:960</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_ada34cb63163e9dd254471d37c3b8fe35"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#ada34cb63163e9dd254471d37c3b8fe35">elftosb::ConversionController::ConversionController</a></div><div class="ttdeci">ConversionController()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:36</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_ad8e901fbaafddbeb2dee816dc079163e"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#ad8e901fbaafddbeb2dee816dc079163e">elftosb::ConversionController::convertStatementList</a></div><div class="ttdeci">OperationSequence * convertStatementList(ListASTNode *statements)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:684</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_data_section_contents_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_data_section_contents_a_s_t_node.html">elftosb::DataSectionContentsASTNode</a></div><div class="ttdoc">Node representing a raw binary section definition. </div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:836</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a1bf67c5c92ed56c95f0d2f0cae656f6a"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a1bf67c5c92ed56c95f0d2f0cae656f6a">elftosb::ConversionController::convertCallStatement</a></div><div class="ttdeci">OperationSequence * convertCallStatement(CallStatementASTNode *statement)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:914</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_keyblob_html"><div class="ttname"><a href="classelftosb_1_1_keyblob.html">elftosb::Keyblob</a></div><div class="ttdoc">Keyblob specification. </div><div class="ttdef"><b>Definition:</b> Keyblob.h:27</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html">elftosb::ConversionController</a></div><div class="ttdoc">Manages the entire elftosb file conversion process. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:48</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a22ac8c0dbe4df90d45ace08ef6c55657"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a22ac8c0dbe4df90d45ace08ef6c55657">elftosb::ConversionController::getSourceFile</a></div><div class="ttdeci">virtual SourceFile * getSourceFile(const std::string &name)</div><div class="ttdoc">Gets the requested source file. </div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:78</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a5effa854cadf46336060593f9cd45a90"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a5effa854cadf46336060593f9cd45a90">elftosb::ConversionController::getEvalContext</a></div><div class="ttdeci">EvalContext & getEvalContext()</div><div class="ttdoc">Returns a reference to the context used for expression evaluation. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:88</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_aeb411fd22b4fe550651159bc85f7a436"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#aeb411fd22b4fe550651159bc85f7a436">elftosb::ConversionController::addExternalFilePath</a></div><div class="ttdeci">void addExternalFilePath(const std::string &path)</div><div class="ttdoc">Specify the path of a file provided by the user from outside the command file. </div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:68</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a5eda84b94dfeea7b7e2144d88b7b4b9a"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a5eda84b94dfeea7b7e2144d88b7b4b9a">elftosb::ConversionController::processKeyblob</a></div><div class="ttdeci">void processKeyblob(ExprASTNode *idExpr, ListASTNode *entires)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:420</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a195c0a0bd872f22443027317e1fa0ec3"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a195c0a0bd872f22443027317e1fa0ec3">elftosb::ConversionController::source_name_vector_t</a></div><div class="ttdeci">std::vector< std::string > source_name_vector_t</div><div class="ttdoc">List of source names. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:140</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a7d3f0e545baec2893568e5bf68eed310"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a7d3f0e545baec2893568e5bf68eed310">elftosb::ConversionController::m_context</a></div><div class="ttdeci">EvalContext m_context</div><div class="ttdoc">Evaluation context for expressions. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:145</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_boot_image_html"><div class="ttname"><a href="classelftosb_1_1_boot_image.html">elftosb::BootImage</a></div><div class="ttdoc">Abstract base class for all boot image format classes. </div><div class="ttdef"><b>Definition:</b> BootImage.h:25</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a4391388367418538188c7d544328d993"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a4391388367418538188c7d544328d993">elftosb::ConversionController::m_encryptKeyblob</a></div><div class="ttdeci">Keyblob * m_encryptKeyblob</div><div class="ttdoc">Keyblob used for OTFAD encryption. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:153</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_mem_enable_statement_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_mem_enable_statement_a_s_t_node.html">elftosb::MemEnableStatementASTNode</a></div><div class="ttdoc">Statement to insert a ROM_MEM_ENABLE_CMD command. </div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:1160</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_expr_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_expr_a_s_t_node.html">elftosb::ExprASTNode</a></div><div class="ttdoc">Abstract base class for all expression AST nodes. </div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:231</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_mode_statement_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_mode_statement_a_s_t_node.html">elftosb::ModeStatementASTNode</a></div><div class="ttdoc">Statement to insert a ROM_MODE_CMD command. </div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:932</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_abc28485f77c40cf315df1ebe8a86f497"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#abc28485f77c40cf315df1ebe8a86f497">elftosb::ConversionController::m_keywrapKeyblob</a></div><div class="ttdeci">Keyblob * m_keywrapKeyblob</div><div class="ttdoc">Keyblob used for keywrapping. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:152</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_af84f4ce40e3f0e89df0d05897ae22807"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#af84f4ce40e3f0e89df0d05897ae22807">elftosb::ConversionController::m_commandFilePath</a></div><div class="ttdeci">smart_ptr< std::string > m_commandFilePath</div><div class="ttdoc">Path to command file. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:143</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_ada4209b5749ef668ba65b2893a7e9732"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#ada4209b5749ef668ba65b2893a7e9732">elftosb::ConversionController::createSourceFromNode</a></div><div class="ttdeci">DataSource * createSourceFromNode(ASTNode *dataNode)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1568</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_ad9b657c1b30e68f496ece044a9a79307"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#ad9b657c1b30e68f496ece044a9a79307">elftosb::ConversionController::convertLoadStatement</a></div><div class="ttdeci">OperationSequence * convertLoadStatement(LoadStatementASTNode *statement)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:810</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_boot_image_generator_html"><div class="ttname"><a href="classelftosb_1_1_boot_image_generator.html">elftosb::BootImageGenerator</a></div><div class="ttdoc">Abstract base class for generators of specific boot image formats. </div><div class="ttdef"><b>Definition:</b> BootImageGenerator.h:33</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a4b194e664f5a3017941113c7ff9f0ac1"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a4b194e664f5a3017941113c7ff9f0ac1">elftosb::ConversionController::~ConversionController</a></div><div class="ttdeci">virtual ~ConversionController()</div><div class="ttdoc">Destructor. </div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:47</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_load_statement_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_load_statement_a_s_t_node.html">elftosb::LoadStatementASTNode</a></div><div class="ttdoc">AST node for a load statement. </div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:1040</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_list_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_list_a_s_t_node.html">elftosb::ListASTNode</a></div><div class="ttdoc">AST node that contains other AST nodes. </div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:107</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_reset_statement_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_reset_statement_a_s_t_node.html">elftosb::ResetStatementASTNode</a></div><div class="ttdoc">Statement to insert a ROM_RESET_CMD command. </div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:1138</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_output_section_html"><div class="ttname"><a href="classelftosb_1_1_output_section.html">elftosb::OutputSection</a></div><div class="ttdoc">Base class for data model of sections of the output file. </div><div class="ttdef"><b>Definition:</b> OutputSection.h:20</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a9a4ed33ca258ea55bad725fa35f21592"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a9a4ed33ca258ea55bad725fa35f21592">elftosb::ConversionController::m_sources</a></div><div class="ttdeci">source_map_t m_sources</div><div class="ttdoc">Map of source names to file objects. </div><div class="ttdef"><b>Definition:</b> ConversionController.h:146</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a3b4f740adcce85a4044650523604c922"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a3b4f740adcce85a4044650523604c922">elftosb::ConversionController::getSourceFromName</a></div><div class="ttdeci">SourceFile * getSourceFromName(std::string *sourceName, int line)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1841</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a63838abcab2df44563db15fc2ca88761"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a63838abcab2df44563db15fc2ca88761">elftosb::ConversionController::printIntConstExpr</a></div><div class="ttdeci">void printIntConstExpr(const std::string &ident, IntConstExprASTNode *expr)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1917</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_conversion_controller_html_a515fa552c78029c448b849d78f6b23e2"><div class="ttname"><a href="classelftosb_1_1_conversion_controller.html#a515fa552c78029c448b849d78f6b23e2">elftosb::ConversionController::substituteVariables</a></div><div class="ttdeci">std::string * substituteVariables(const std::string *message)</div><div class="ttdef"><b>Definition:</b> ConversionController.cpp:1449</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_a_s_t_node_html"><div class="ttname"><a href="classelftosb_1_1_a_s_t_node.html">elftosb::ASTNode</a></div><div class="ttdoc">The base class for all AST node classes. </div><div class="ttdef"><b>Definition:</b> ElftosbAST.h:33</div></div>
|
|
<div class="ttc" id="classelftosb_1_1_elftosb_lexer_html"><div class="ttname"><a href="classelftosb_1_1_elftosb_lexer.html">elftosb::ElftosbLexer</a></div><div class="ttdoc">Lexical scanner class for elftosb command files. </div><div class="ttdef"><b>Definition:</b> ElftosbLexer.h:62</div></div>
|
|
</div><!-- fragment --></div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="dir_96c2f84c885cff71a930b6845f88cdd3.html">elftosb</a></li><li class="navelem"><a class="el" href="dir_052a101de9f4bb1b83e10d1f7ba74046.html">elftosb2</a></li><li class="navelem"><b>ConversionController.h</b></li>
|
|
<li class="footer">Generated on Mon Mar 7 2016 16:49:49 for Kinetis Bootloader Host by
|
|
<a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|