Files
opennurbs/6/d8/dfd/class_o_n___file_reference.html
Bozo 832ccb5c1a Publish!
Generated from v6.0.11315.11111-test14
2018-02-03 11:08:49 -08:00

1424 lines
82 KiB
HTML

<!-- HTML header for doxygen 1.8.13-->
<!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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>openNURBS SDK Help: ON_FileReference Class Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<!-- <script type="text/javascript" src="../../jquery.js"></script> -->
<script type="text/javascript" src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
<link href="../../customdoxygen.css" rel="stylesheet" type="text/css"/>
<!-- bootstrap -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
<!-- smartmenus -->
<link href="../../jquery.smartmenus.bootstrap.css" rel="stylesheet">
<script type="text/javascript" src="../../jquery.smartmenus.js"></script>
<script type="text/javascript" src="../../jquery.smartmenus.bootstrap.js"></script>
</head>
<body>
<!-- <div class="version-banner">
Go back to the <a href="/">main site</a>...
</div> -->
<div class="container">
<!-- navbar -->
<nav class="navbar navbar-default">
<div class="container-fluid">
<a class="navbar-brand" href="#">openNURBS SDK Help</a>
<div class="navbar-collapse collapse" id="main-nav-placeholder">
<!-- <p class="navbar-text navbar-right">v6.0</p> -->
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a class="dropdown-toggle" href="#">v6.0 <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Latest (6.x)</a></li>
<li class="disabled"><a href="#">WIP (7.x)</a></li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div class="page-content">
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('../../',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="../../d8/deb/class_o_n___file_reference-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ON_FileReference Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="../../d6/da3/opennurbs__file__utilities_8h_source.html">opennurbs_file_utilities.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a65c239486e5d0a0f20c8fa2d0b61d876"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">FindFilePreference</a> : unsigned char { <br />
&#160;&#160;<a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876a6adf97f83acf6453d4a6a4b1070f3754">FindFilePreference::None</a> = 0,
<a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876a5aa4e1715e32bca15d81bdbccb759ff5">FindFilePreference::FullPath</a> = 1,
<a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876a50d72a7b6a8baa24bcdbf5d0334c4897">FindFilePreference::RelativePath</a> = 2,
<a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876a6edb6742a69b12bb2bc426939049f2b6">FindFilePreference::BasePath</a> = 3,
<br />
&#160;&#160;<a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876a62a4bf2ac127904c3cb8807becd0ed23">FindFilePreference::ContentMatch</a> = 4,
<a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876a1f7eef9de38738e79be7905c6067c98f">FindFilePreference::MostRecent</a> = 5
<br />
}<tr class="memdesc:a65c239486e5d0a0f20c8fa2d0b61d876"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines options for file search. <a href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a65c239486e5d0a0f20c8fa2d0b61d876"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6dad3944d37be0da31bc0504cc71b46"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46">Status</a> : unsigned int { <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46a88183b946cc5f0e8c96b2e66e1c74a7e">Status::Unknown</a> = 0,
<a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46a97b1650b042da84918df0492b2c8652b">Status::FullPathValid</a> = 1,
<a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46a2767828026039e8ba7b38973cbb701f2">Status::FileNotFound</a> = 2
}<tr class="memdesc:ae6dad3944d37be0da31bc0504cc71b46"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enumerates a list of file statuses. <a href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ae6dad3944d37be0da31bc0504cc71b46"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a5b880b82b12f5b8389555d26d9ee54b1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a5b880b82b12f5b8389555d26d9ee54b1">ON_FileReference</a> ()=default</td></tr>
<tr class="separator:a5b880b82b12f5b8389555d26d9ee54b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a159b398445a04caf28901e2cea9a7a9e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a159b398445a04caf28901e2cea9a7a9e">ON_FileReference</a> (const <a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a> &amp;)=default</td></tr>
<tr class="separator:a159b398445a04caf28901e2cea9a7a9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f75a5625d397a59246bec76482129fb"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a1f75a5625d397a59246bec76482129fb">ON_FileReference</a> (const wchar_t *full_path, const wchar_t *relative_path, <a class="el" href="../../db/d13/class_o_n___content_hash.html">ON_ContentHash</a> content_hash, <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46">ON_FileReference::Status</a> full_path_status)</td></tr>
<tr class="separator:a1f75a5625d397a59246bec76482129fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e5a16b603fa0777a5b8ae44e3f5a225"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a9e5a16b603fa0777a5b8ae44e3f5a225">~ON_FileReference</a> ()=default</td></tr>
<tr class="separator:a9e5a16b603fa0777a5b8ae44e3f5a225"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa611646920101f2caa5a73eec72bbb61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#aa611646920101f2caa5a73eec72bbb61">ClearContentHash</a> ()</td></tr>
<tr class="separator:aa611646920101f2caa5a73eec72bbb61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91ea6e00f5d42d685aebe9cb542b5b80"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a91ea6e00f5d42d685aebe9cb542b5b80">ClearFullPath</a> ()</td></tr>
<tr class="separator:a91ea6e00f5d42d685aebe9cb542b5b80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d933bcf5ec3c8412a9009b59eeb3fc6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a0d933bcf5ec3c8412a9009b59eeb3fc6">ClearRelativePath</a> ()</td></tr>
<tr class="separator:a0d933bcf5ec3c8412a9009b59eeb3fc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aede173d1e522235f3d8c8247bd5ce281"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="../../db/d13/class_o_n___content_hash.html">ON_ContentHash</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#aede173d1e522235f3d8c8247bd5ce281">ContentHash</a> () const</td></tr>
<tr class="separator:aede173d1e522235f3d8c8247bd5ce281"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ac0e34ccb03c4c99453e8c3956ee601"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a3ac0e34ccb03c4c99453e8c3956ee601">Dump</a> (class <a class="el" href="../../d2/da3/class_o_n___text_log.html">ON_TextLog</a> &amp;text_log) const</td></tr>
<tr class="separator:a3ac0e34ccb03c4c99453e8c3956ee601"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ef48df427d6903f5b0ff03de44093e0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d8/db4/struct_o_n___u_u_i_d__struct.html">ON_UUID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a4ef48df427d6903f5b0ff03de44093e0">EmbeddedFileId</a> () const</td></tr>
<tr class="separator:a4ef48df427d6903f5b0ff03de44093e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b7165105a647c45cd9f23b3a0034037"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a2b7165105a647c45cd9f23b3a0034037">FindFile</a> (const wchar_t *base_path, bool bBasePathIncludesFileName, <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> first_choice, <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> second_choice, <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> third_choice, <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> forth_choice, <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> fifth_choice, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> &amp;found_file_full_path) const</td></tr>
<tr class="memdesc:a2b7165105a647c45cd9f23b3a0034037"><td class="mdescLeft">&#160;</td><td class="mdescRight">Uses the full path, relative path and parameter information to find a full path to a file that exists. <a href="#a2b7165105a647c45cd9f23b3a0034037">More...</a><br /></td></tr>
<tr class="separator:a2b7165105a647c45cd9f23b3a0034037"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aafce0c134a210a12482c0234e69fcdab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#aafce0c134a210a12482c0234e69fcdab">FindFile</a> (const wchar_t *base_path, bool bBasePathIncludesFileName, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> &amp;found_file_full_path) const</td></tr>
<tr class="memdesc:aafce0c134a210a12482c0234e69fcdab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Uses the full path, relative path and parameter information to find a full path to a file that exists. <a href="#aafce0c134a210a12482c0234e69fcdab">More...</a><br /></td></tr>
<tr class="separator:aafce0c134a210a12482c0234e69fcdab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8057154c24fc698384cf9487d6fa5a12"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a8057154c24fc698384cf9487d6fa5a12">FindFileAndUpdateReference</a> (const wchar_t *base_path, bool bBasePathIncludesFileName, <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> first_choice, <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> second_choice, <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> third_choice, <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> forth_choice, <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> fifth_choice, bool bUpdateContentHash, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> &amp;found_file_full_path)</td></tr>
<tr class="memdesc:a8057154c24fc698384cf9487d6fa5a12"><td class="mdescLeft">&#160;</td><td class="mdescRight">The search for the file is identical to the one performed by find file. If a file is found, the full path setting in this reference is updated. <a href="#a8057154c24fc698384cf9487d6fa5a12">More...</a><br /></td></tr>
<tr class="separator:a8057154c24fc698384cf9487d6fa5a12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2307bf8d791e91f809f6bc15d9b1e576"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a2307bf8d791e91f809f6bc15d9b1e576">FindFileAndUpdateReference</a> (const wchar_t *base_path, bool bBasePathIncludesFileName, bool bUpdateContentHash, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> &amp;found_file_full_path)</td></tr>
<tr class="memdesc:a2307bf8d791e91f809f6bc15d9b1e576"><td class="mdescLeft">&#160;</td><td class="mdescRight">The search for the file is identical to the one performed by find file. If a file is found, the full path setting in this reference is updated. <a href="#a2307bf8d791e91f809f6bc15d9b1e576">More...</a><br /></td></tr>
<tr class="separator:a2307bf8d791e91f809f6bc15d9b1e576"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0276affb2d7f5a87cd3d2f52d6f004e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#af0276affb2d7f5a87cd3d2f52d6f004e">FindFileAndUpdateReference</a> (const wchar_t *base_path, bool bBasePathIncludesFileName, bool bUpdateContentHash)</td></tr>
<tr class="separator:af0276affb2d7f5a87cd3d2f52d6f004e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3eaf822c1004c7c1d6d5a5897bbd9309"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a3eaf822c1004c7c1d6d5a5897bbd9309">FullPath</a> () const</td></tr>
<tr class="separator:a3eaf822c1004c7c1d6d5a5897bbd9309"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38596f5aa2363def381fd24351e7c5db"><td class="memItemLeft" align="right" valign="top">const wchar_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a38596f5aa2363def381fd24351e7c5db">FullPathAsPointer</a> () const</td></tr>
<tr class="separator:a38596f5aa2363def381fd24351e7c5db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59fcf831df741ed55e94dc562c2e015f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="../../dd/ddf/class_o_n___s_h_a1___hash.html">ON_SHA1_Hash</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a59fcf831df741ed55e94dc562c2e015f">FullPathHash</a> () const</td></tr>
<tr class="separator:a59fcf831df741ed55e94dc562c2e015f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94664aa885108d8e33001ae6b99d49ef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46">ON_FileReference::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a94664aa885108d8e33001ae6b99d49ef">FullPathStatus</a> () const</td></tr>
<tr class="separator:a94664aa885108d8e33001ae6b99d49ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf095acb060c950a8f82a4152e75207c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#aaf095acb060c950a8f82a4152e75207c">IsNotSet</a> () const</td></tr>
<tr class="separator:aaf095acb060c950a8f82a4152e75207c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08f8cdaaf7d075348a4b8710ff25d177"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a08f8cdaaf7d075348a4b8710ff25d177">IsSet</a> () const</td></tr>
<tr class="separator:a08f8cdaaf7d075348a4b8710ff25d177"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64f4cfdc383c151611aa030a7db77c93"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a64f4cfdc383c151611aa030a7db77c93">operator=</a> (const <a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a> &amp;)=default</td></tr>
<tr class="separator:a64f4cfdc383c151611aa030a7db77c93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b93678bf727faa529b68aeb1cbfabe0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a5b93678bf727faa529b68aeb1cbfabe0">Read</a> (<a class="el" href="../../db/d16/class_o_n___binary_archive.html">ON_BinaryArchive</a> &amp;archive)</td></tr>
<tr class="separator:a5b93678bf727faa529b68aeb1cbfabe0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a923f8d29e9f3395dd233d2893fff4833"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="../../db/d13/class_o_n___content_hash.html">ON_ContentHash</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a923f8d29e9f3395dd233d2893fff4833">RecentContentHash</a> (ON__UINT64 recent_time) const</td></tr>
<tr class="separator:a923f8d29e9f3395dd233d2893fff4833"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afdf782ac9c7d9a635447f50db50e6119"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#afdf782ac9c7d9a635447f50db50e6119">RelativePath</a> () const</td></tr>
<tr class="separator:afdf782ac9c7d9a635447f50db50e6119"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a874bf62618e3f1f594056de7d8c11cd4"><td class="memItemLeft" align="right" valign="top">const wchar_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a874bf62618e3f1f594056de7d8c11cd4">RelativePathAsPointer</a> () const</td></tr>
<tr class="separator:a874bf62618e3f1f594056de7d8c11cd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16cb3042ddedeefd34a32f3048e63ab2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a16cb3042ddedeefd34a32f3048e63ab2">SetContentHash</a> (<a class="el" href="../../db/d13/class_o_n___content_hash.html">ON_ContentHash</a> content_hash)</td></tr>
<tr class="separator:a16cb3042ddedeefd34a32f3048e63ab2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4bf688dc587cdeebfe29fb9afecd4b3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ad4bf688dc587cdeebfe29fb9afecd4b3">SetEmbeddedFileId</a> (<a class="el" href="../../d8/db4/struct_o_n___u_u_i_d__struct.html">ON_UUID</a> embedded_file_id)</td></tr>
<tr class="separator:ad4bf688dc587cdeebfe29fb9afecd4b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17f6e901cca66b559e2a8c99f148127f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a17f6e901cca66b559e2a8c99f148127f">SetFullPath</a> (const wchar_t *full_path, bool bSetContentHash)</td></tr>
<tr class="separator:a17f6e901cca66b559e2a8c99f148127f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb1995659411307d61c641986859df56"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#aeb1995659411307d61c641986859df56">SetFullPath</a> (const char *full_path, bool bSetContentHash)</td></tr>
<tr class="separator:aeb1995659411307d61c641986859df56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98356693f119701c476a4f8cd7bd9111"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a98356693f119701c476a4f8cd7bd9111">SetFullPathStatus</a> (<a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46">ON_FileReference::Status</a> full_path_status)</td></tr>
<tr class="separator:a98356693f119701c476a4f8cd7bd9111"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e8647125c8488a25e87227522fd3909"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a9e8647125c8488a25e87227522fd3909">SetRelativePath</a> (const wchar_t *relative_path)</td></tr>
<tr class="separator:a9e8647125c8488a25e87227522fd3909"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad9f53753a601e6553db34ae3bfb1337"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#aad9f53753a601e6553db34ae3bfb1337">SetRelativePath</a> (const char *relative_path)</td></tr>
<tr class="separator:aad9f53753a601e6553db34ae3bfb1337"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc6b49786d4c9d214e18800e64b4807b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#afc6b49786d4c9d214e18800e64b4807b">SetRelativePathFromBasePath</a> (const wchar_t *base_path, bool bBasePathContainsFileName)</td></tr>
<tr class="separator:afc6b49786d4c9d214e18800e64b4807b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea7b35e809d9ee6ee1935c22dcfda467"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#aea7b35e809d9ee6ee1935c22dcfda467">SetRelativePathFromBasePath</a> (const char *base_path, bool bBasePathContainsFileName)</td></tr>
<tr class="separator:aea7b35e809d9ee6ee1935c22dcfda467"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3c1cb9eb7ae6c8a1f115d90f022cd9e"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#af3c1cb9eb7ae6c8a1f115d90f022cd9e">SizeOf</a> () const</td></tr>
<tr class="separator:af3c1cb9eb7ae6c8a1f115d90f022cd9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a737a95d4dae41ef8d514d97289b34ebc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a737a95d4dae41ef8d514d97289b34ebc">UpdateContentHash</a> ()</td></tr>
<tr class="separator:a737a95d4dae41ef8d514d97289b34ebc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21d869fbbea601cbe6b61e71d9a81f58"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a21d869fbbea601cbe6b61e71d9a81f58">Write</a> (bool bUseArchiveDirectoryAsBasePath, <a class="el" href="../../db/d16/class_o_n___binary_archive.html">ON_BinaryArchive</a> &amp;archive) const</td></tr>
<tr class="separator:a21d869fbbea601cbe6b61e71d9a81f58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b14fb0f55f372cbf63da8546dc5a2ff"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a0b14fb0f55f372cbf63da8546dc5a2ff">Write</a> (const wchar_t *base_path, bool bBasePathIncludesFileName, <a class="el" href="../../db/d16/class_o_n___binary_archive.html">ON_BinaryArchive</a> &amp;archive) const</td></tr>
<tr class="separator:a0b14fb0f55f372cbf63da8546dc5a2ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a6b371b2180d486d4e1ee63efdeee2cc0"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a6b371b2180d486d4e1ee63efdeee2cc0">Compare</a> (const <a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a> &amp;a, const <a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a> &amp;b)</td></tr>
<tr class="separator:a6b371b2180d486d4e1ee63efdeee2cc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65058ad0e91810cdf58e6bd4f0dd950f"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65058ad0e91810cdf58e6bd4f0dd950f">CreateFromFullPath</a> (const wchar_t *full_path, bool bSetContentHash, bool bSetFullPathStatus)</td></tr>
<tr class="separator:a65058ad0e91810cdf58e6bd4f0dd950f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abddd0e188e40d1d7b97acf503c553428"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46">ON_FileReference::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#abddd0e188e40d1d7b97acf503c553428">StatusFromUnsigned</a> (unsigned int full_path_status_as_unsigned)</td></tr>
<tr class="separator:abddd0e188e40d1d7b97acf503c553428"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:a06f1799b2ed593bd0f8c9270a9719ec2"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a06f1799b2ed593bd0f8c9270a9719ec2">Unset</a></td></tr>
<tr class="separator:a06f1799b2ed593bd0f8c9270a9719ec2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="a65c239486e5d0a0f20c8fa2d0b61d876"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65c239486e5d0a0f20c8fa2d0b61d876">&#9670;&nbsp;</a></span>FindFilePreference</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> : unsigned char</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Defines options for file search.</p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a65c239486e5d0a0f20c8fa2d0b61d876a6adf97f83acf6453d4a6a4b1070f3754"></a>None&#160;</td><td class="fielddoc"><p>The choice is not defined.</p>
</td></tr>
<tr><td class="fieldname"><a id="a65c239486e5d0a0f20c8fa2d0b61d876a5aa4e1715e32bca15d81bdbccb759ff5"></a>FullPath&#160;</td><td class="fielddoc"><p>File name exists in <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a3eaf822c1004c7c1d6d5a5897bbd9309">FullPath()</a>.</p>
</td></tr>
<tr><td class="fieldname"><a id="a65c239486e5d0a0f20c8fa2d0b61d876a50d72a7b6a8baa24bcdbf5d0334c4897"></a>RelativePath&#160;</td><td class="fielddoc"><p>File name exists in base path + <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#afdf782ac9c7d9a635447f50db50e6119">RelativePath()</a>.</p>
</td></tr>
<tr><td class="fieldname"><a id="a65c239486e5d0a0f20c8fa2d0b61d876a6edb6742a69b12bb2bc426939049f2b6"></a>BasePath&#160;</td><td class="fielddoc"><p>File name exists in base path directory.</p>
</td></tr>
<tr><td class="fieldname"><a id="a65c239486e5d0a0f20c8fa2d0b61d876a62a4bf2ac127904c3cb8807becd0ed23"></a>ContentMatch&#160;</td><td class="fielddoc"><p>File with mathing content exists.</p>
</td></tr>
<tr><td class="fieldname"><a id="a65c239486e5d0a0f20c8fa2d0b61d876a1f7eef9de38738e79be7905c6067c98f"></a>MostRecent&#160;</td><td class="fielddoc"><p>Most recently modifed file.</p>
</td></tr>
</table>
</div>
</div>
<a id="ae6dad3944d37be0da31bc0504cc71b46"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6dad3944d37be0da31bc0504cc71b46">&#9670;&nbsp;</a></span>Status</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46">ON_FileReference::Status</a> : unsigned int</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Enumerates a list of file statuses.</p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ae6dad3944d37be0da31bc0504cc71b46a88183b946cc5f0e8c96b2e66e1c74a7e"></a>Unknown&#160;</td><td class="fielddoc"><p>Status of a the full path is not known. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae6dad3944d37be0da31bc0504cc71b46a97b1650b042da84918df0492b2c8652b"></a>FullPathValid&#160;</td><td class="fielddoc"><p>Full path is valid. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae6dad3944d37be0da31bc0504cc71b46a2767828026039e8ba7b38973cbb701f2"></a>FileNotFound&#160;</td><td class="fielddoc"><p>Unable to locate file. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a5b880b82b12f5b8389555d26d9ee54b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b880b82b12f5b8389555d26d9ee54b1">&#9670;&nbsp;</a></span>ON_FileReference() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ON_FileReference::ON_FileReference </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a9e5a16b603fa0777a5b8ae44e3f5a225"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e5a16b603fa0777a5b8ae44e3f5a225">&#9670;&nbsp;</a></span>~ON_FileReference()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ON_FileReference::~ON_FileReference </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a159b398445a04caf28901e2cea9a7a9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a159b398445a04caf28901e2cea9a7a9e">&#9670;&nbsp;</a></span>ON_FileReference() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ON_FileReference::ON_FileReference </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a1f75a5625d397a59246bec76482129fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f75a5625d397a59246bec76482129fb">&#9670;&nbsp;</a></span>ON_FileReference() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ON_FileReference::ON_FileReference </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>full_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>relative_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../db/d13/class_o_n___content_hash.html">ON_ContentHash</a>&#160;</td>
<td class="paramname"><em>content_hash</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46">ON_FileReference::Status</a>&#160;</td>
<td class="paramname"><em>full_path_status</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="aa611646920101f2caa5a73eec72bbb61"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa611646920101f2caa5a73eec72bbb61">&#9670;&nbsp;</a></span>ClearContentHash()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::ClearContentHash </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a91ea6e00f5d42d685aebe9cb542b5b80"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a91ea6e00f5d42d685aebe9cb542b5b80">&#9670;&nbsp;</a></span>ClearFullPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::ClearFullPath </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0d933bcf5ec3c8412a9009b59eeb3fc6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0d933bcf5ec3c8412a9009b59eeb3fc6">&#9670;&nbsp;</a></span>ClearRelativePath()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::ClearRelativePath </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a6b371b2180d486d4e1ee63efdeee2cc0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6b371b2180d486d4e1ee63efdeee2cc0">&#9670;&nbsp;</a></span>Compare()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int ON_FileReference::Compare </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a> &amp;&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a> &amp;&#160;</td>
<td class="paramname"><em>b</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aede173d1e522235f3d8c8247bd5ce281"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aede173d1e522235f3d8c8247bd5ce281">&#9670;&nbsp;</a></span>ContentHash()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="../../db/d13/class_o_n___content_hash.html">ON_ContentHash</a>&amp; ON_FileReference::ContentHash </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>File content hash. This value is persistent, saved in 3dm archive, and could have been calculated a long time ago on a different computer. </dd></dl>
</div>
</div>
<a id="a65058ad0e91810cdf58e6bd4f0dd950f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65058ad0e91810cdf58e6bd4f0dd950f">&#9670;&nbsp;</a></span>CreateFromFullPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a> ON_FileReference::CreateFromFullPath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>full_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bSetContentHash</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bSetFullPathStatus</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a3ac0e34ccb03c4c99453e8c3956ee601"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3ac0e34ccb03c4c99453e8c3956ee601">&#9670;&nbsp;</a></span>Dump()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::Dump </td>
<td>(</td>
<td class="paramtype">class <a class="el" href="../../d2/da3/class_o_n___text_log.html">ON_TextLog</a> &amp;&#160;</td>
<td class="paramname"><em>text_log</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a4ef48df427d6903f5b0ff03de44093e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4ef48df427d6903f5b0ff03de44093e0">&#9670;&nbsp;</a></span>EmbeddedFileId()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d8/db4/struct_o_n___u_u_i_d__struct.html">ON_UUID</a> ON_FileReference::EmbeddedFileId </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a2b7165105a647c45cd9f23b3a0034037"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2b7165105a647c45cd9f23b3a0034037">&#9670;&nbsp;</a></span>FindFile() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> ON_FileReference::FindFile </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>base_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bBasePathIncludesFileName</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td>
<td class="paramname"><em>first_choice</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td>
<td class="paramname"><em>second_choice</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td>
<td class="paramname"><em>third_choice</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td>
<td class="paramname"><em>forth_choice</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td>
<td class="paramname"><em>fifth_choice</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> &amp;&#160;</td>
<td class="paramname"><em>found_file_full_path</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Uses the full path, relative path and parameter information to find a full path to a file that exists. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base_path</td><td>[in] If base_path and <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#afdf782ac9c7d9a635447f50db50e6119">RelativePath()</a> are not empty, then path base_path+RelativePath(). If base_path is not empty, then base_path + filename is considered.</td></tr>
<tr><td class="paramname">bBasePathIncludesFileName</td><td>[in] True if base_path contains a file name that must be removed to get a directory path.</td></tr>
<tr><td class="paramname">first_choice</td><td>[in] When multiple files are found in different locations, the first_choice, second_choice, third_choice, forth_choice, and fifth_choice parameters are used to select which file is returned.</td></tr>
<tr><td class="paramname">second_choice</td><td>[in] When multiple files are found in different locations, the first_choice, second_choice, third_choice, forth_choice, and fifth_choice parameters are used to select which file is returned.</td></tr>
<tr><td class="paramname">third_choice</td><td>[in] When multiple files are found in different locations, the first_choice, second_choice, third_choice, forth_choice, and fifth_choice parameters are used to select which file is returned.</td></tr>
<tr><td class="paramname">forth_choice</td><td>[in] When multiple files are found in different locations, the first_choice, second_choice, third_choice, forth_choice, and fifth_choice parameters are used to select which file is returned.</td></tr>
<tr><td class="paramname">fifth_choice</td><td>[in] When multiple files are found in different locations, the first_choice, second_choice, third_choice, forth_choice, and fifth_choice parameters are used to select which file is returned.</td></tr>
<tr><td class="paramname">full_path</td><td>[out] A full path to a file that exists. If <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a3eaf822c1004c7c1d6d5a5897bbd9309">FullPath()</a> and base_path+RelativePath() resolve to different files, the content hash information is used to select the file.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>If the file is found, then the returned <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876" title="Defines options for file search.">ON_FileReference::FindFilePreference</a> enum value indicates why it was selected. If the file is not found, then <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876a6adf97f83acf6453d4a6a4b1070f3754" title="The choice is not defined.">ON_FileReference::FindFilePreference::None</a> is returned and full_path is empty. </dd></dl>
<p>The locations <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a3eaf822c1004c7c1d6d5a5897bbd9309">FullPath()</a>, base_path+RelativePath(), and base_path+FileName() are tested. If multiple files are found, first_choice, second_choice, third_choice, forth_choice, and fifth_choice are used to select which file is returned. </p>
</div>
</div>
<a id="aafce0c134a210a12482c0234e69fcdab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aafce0c134a210a12482c0234e69fcdab">&#9670;&nbsp;</a></span>FindFile() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> ON_FileReference::FindFile </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>base_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bBasePathIncludesFileName</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> &amp;&#160;</td>
<td class="paramname"><em>found_file_full_path</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Uses the full path, relative path and parameter information to find a full path to a file that exists. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base_path</td><td>[in] If base_path and <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#afdf782ac9c7d9a635447f50db50e6119">RelativePath()</a> are not empty, then path base_path+RelativePath(). If base_path is not empty, then base_path + filename is considered.</td></tr>
<tr><td class="paramname">bBasePathIncludesFileName</td><td>[in] True if base_path contains a file name that must be removed to get a directory path.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>If the file is found, then the returned <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876" title="Defines options for file search.">ON_FileReference::FindFilePreference</a> enum value indicates why it was selected. If the file is not found, then <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876a6adf97f83acf6453d4a6a4b1070f3754" title="The choice is not defined.">ON_FileReference::FindFilePreference::None</a> is returned and full_path is empty. </dd></dl>
<p>The locations <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a3eaf822c1004c7c1d6d5a5897bbd9309">FullPath()</a>, base_path+RelativePath(), and base_path+FileName() are tested. If multiple files are found, the returned file is selected in the order relative path, full path, content match, base path and most recently modified. If you prefer a different order, use the version of <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a2b7165105a647c45cd9f23b3a0034037" title="Uses the full path, relative path and parameter information to find a full path to a file that exists...">ON_FileReference::FindFile</a> with 5 <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876" title="Defines options for file search.">ON_FileReference::FindFilePreference</a> parameters. </p>
</div>
</div>
<a id="a8057154c24fc698384cf9487d6fa5a12"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8057154c24fc698384cf9487d6fa5a12">&#9670;&nbsp;</a></span>FindFileAndUpdateReference() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> ON_FileReference::FindFileAndUpdateReference </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>base_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bBasePathIncludesFileName</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td>
<td class="paramname"><em>first_choice</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td>
<td class="paramname"><em>second_choice</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td>
<td class="paramname"><em>third_choice</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td>
<td class="paramname"><em>forth_choice</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a>&#160;</td>
<td class="paramname"><em>fifth_choice</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bUpdateContentHash</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> &amp;&#160;</td>
<td class="paramname"><em>found_file_full_path</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The search for the file is identical to the one performed by find file. If a file is found, the full path setting in this reference is updated. </p>
</div>
</div>
<a id="a2307bf8d791e91f809f6bc15d9b1e576"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2307bf8d791e91f809f6bc15d9b1e576">&#9670;&nbsp;</a></span>FindFileAndUpdateReference() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> ON_FileReference::FindFileAndUpdateReference </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>base_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bBasePathIncludesFileName</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bUpdateContentHash</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> &amp;&#160;</td>
<td class="paramname"><em>found_file_full_path</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The search for the file is identical to the one performed by find file. If a file is found, the full path setting in this reference is updated. </p>
</div>
</div>
<a id="af0276affb2d7f5a87cd3d2f52d6f004e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0276affb2d7f5a87cd3d2f52d6f004e">&#9670;&nbsp;</a></span>FindFileAndUpdateReference() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a65c239486e5d0a0f20c8fa2d0b61d876">ON_FileReference::FindFilePreference</a> ON_FileReference::FindFileAndUpdateReference </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>base_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bBasePathIncludesFileName</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bUpdateContentHash</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a3eaf822c1004c7c1d6d5a5897bbd9309"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3eaf822c1004c7c1d6d5a5897bbd9309">&#9670;&nbsp;</a></span>FullPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&amp; ON_FileReference::FullPath </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a38596f5aa2363def381fd24351e7c5db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a38596f5aa2363def381fd24351e7c5db">&#9670;&nbsp;</a></span>FullPathAsPointer()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const wchar_t* ON_FileReference::FullPathAsPointer </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a59fcf831df741ed55e94dc562c2e015f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59fcf831df741ed55e94dc562c2e015f">&#9670;&nbsp;</a></span>FullPathHash()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="../../dd/ddf/class_o_n___s_h_a1___hash.html">ON_SHA1_Hash</a>&amp; ON_FileReference::FullPathHash </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>ON_SHA1_Hash::FileSystemPathHash(FullPath()); </dd></dl>
<p>The value of the hash is saved in a runtime cache so using this function when comparing paths is efficient when multple compares are required. </p>
<dl class="section see"><dt>See also</dt><dd>ON_NameHash::CreateFilePathHash( ON_FileReference&amp; file_reference );</dd></dl>
</div>
</div>
<a id="a94664aa885108d8e33001ae6b99d49ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a94664aa885108d8e33001ae6b99d49ef">&#9670;&nbsp;</a></span>FullPathStatus()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46">ON_FileReference::Status</a> ON_FileReference::FullPathStatus </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aaf095acb060c950a8f82a4152e75207c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaf095acb060c950a8f82a4152e75207c">&#9670;&nbsp;</a></span>IsNotSet()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_FileReference::IsNotSet </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>True if <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a3eaf822c1004c7c1d6d5a5897bbd9309">FullPath()</a> is empty. </dd></dl>
</div>
</div>
<a id="a08f8cdaaf7d075348a4b8710ff25d177"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08f8cdaaf7d075348a4b8710ff25d177">&#9670;&nbsp;</a></span>IsSet()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_FileReference::IsSet </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>True if <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a3eaf822c1004c7c1d6d5a5897bbd9309">FullPath()</a> is not empty. </dd></dl>
</div>
</div>
<a id="a64f4cfdc383c151611aa030a7db77c93"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a64f4cfdc383c151611aa030a7db77c93">&#9670;&nbsp;</a></span>operator=()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a>&amp; ON_FileReference::operator= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a5b93678bf727faa529b68aeb1cbfabe0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b93678bf727faa529b68aeb1cbfabe0">&#9670;&nbsp;</a></span>Read()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_FileReference::Read </td>
<td>(</td>
<td class="paramtype"><a class="el" href="../../db/d16/class_o_n___binary_archive.html">ON_BinaryArchive</a> &amp;&#160;</td>
<td class="paramname"><em>archive</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Calling <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a5b93678bf727faa529b68aeb1cbfabe0">Read()</a> sets m_full_path_status = <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46a88183b946cc5f0e8c96b2e66e1c74a7e" title="Status of a the full path is not known. ">ON_FileReference::Status::Unknown</a>, even if that was not the status when <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a21d869fbbea601cbe6b61e71d9a81f58">Write()</a> was called. </p>
</div>
</div>
<a id="a923f8d29e9f3395dd233d2893fff4833"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a923f8d29e9f3395dd233d2893fff4833">&#9670;&nbsp;</a></span>RecentContentHash()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="../../db/d13/class_o_n___content_hash.html">ON_ContentHash</a>&amp; ON_FileReference::RecentContentHash </td>
<td>(</td>
<td class="paramtype">ON__UINT64&#160;</td>
<td class="paramname"><em>recent_time</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">recent_time</td><td>[in] The time, in number of seconds since January 1, 1970 UTC, to use when deciding what content hashes can be considered recent. If recent_time is 0 or in the future, then the current value of ON_SecondsSinceJanOne1970UTC() is used. Typically this parameter is the value of ON_SecondsSinceJanOne1970UTC() at the beginning of a calculation durint which any referenced files will not be changed.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A file content hash value calculated on or after a specified time in the current instance of the application. This value is used to detect changed files in the current instance of the application. It is cached for performance reasons. This value is never saved in 3dm files. </dd></dl>
</div>
</div>
<a id="afdf782ac9c7d9a635447f50db50e6119"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afdf782ac9c7d9a635447f50db50e6119">&#9670;&nbsp;</a></span>RelativePath()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&amp; ON_FileReference::RelativePath </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a874bf62618e3f1f594056de7d8c11cd4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a874bf62618e3f1f594056de7d8c11cd4">&#9670;&nbsp;</a></span>RelativePathAsPointer()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const wchar_t* ON_FileReference::RelativePathAsPointer </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a16cb3042ddedeefd34a32f3048e63ab2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16cb3042ddedeefd34a32f3048e63ab2">&#9670;&nbsp;</a></span>SetContentHash()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::SetContentHash </td>
<td>(</td>
<td class="paramtype"><a class="el" href="../../db/d13/class_o_n___content_hash.html">ON_ContentHash</a>&#160;</td>
<td class="paramname"><em>content_hash</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad4bf688dc587cdeebfe29fb9afecd4b3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad4bf688dc587cdeebfe29fb9afecd4b3">&#9670;&nbsp;</a></span>SetEmbeddedFileId()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::SetEmbeddedFileId </td>
<td>(</td>
<td class="paramtype"><a class="el" href="../../d8/db4/struct_o_n___u_u_i_d__struct.html">ON_UUID</a>&#160;</td>
<td class="paramname"><em>embedded_file_id</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a17f6e901cca66b559e2a8c99f148127f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a17f6e901cca66b559e2a8c99f148127f">&#9670;&nbsp;</a></span>SetFullPath() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::SetFullPath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>full_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bSetContentHash</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aeb1995659411307d61c641986859df56"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb1995659411307d61c641986859df56">&#9670;&nbsp;</a></span>SetFullPath() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::SetFullPath </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>full_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bSetContentHash</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a98356693f119701c476a4f8cd7bd9111"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a98356693f119701c476a4f8cd7bd9111">&#9670;&nbsp;</a></span>SetFullPathStatus()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::SetFullPathStatus </td>
<td>(</td>
<td class="paramtype"><a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46">ON_FileReference::Status</a>&#160;</td>
<td class="paramname"><em>full_path_status</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a9e8647125c8488a25e87227522fd3909"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e8647125c8488a25e87227522fd3909">&#9670;&nbsp;</a></span>SetRelativePath() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::SetRelativePath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>relative_path</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aad9f53753a601e6553db34ae3bfb1337"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad9f53753a601e6553db34ae3bfb1337">&#9670;&nbsp;</a></span>SetRelativePath() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::SetRelativePath </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>relative_path</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="afc6b49786d4c9d214e18800e64b4807b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afc6b49786d4c9d214e18800e64b4807b">&#9670;&nbsp;</a></span>SetRelativePathFromBasePath() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::SetRelativePathFromBasePath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>base_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bBasePathContainsFileName</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aea7b35e809d9ee6ee1935c22dcfda467"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aea7b35e809d9ee6ee1935c22dcfda467">&#9670;&nbsp;</a></span>SetRelativePathFromBasePath() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_FileReference::SetRelativePathFromBasePath </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>base_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bBasePathContainsFileName</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af3c1cb9eb7ae6c8a1f115d90f022cd9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3c1cb9eb7ae6c8a1f115d90f022cd9e">&#9670;&nbsp;</a></span>SizeOf()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned int ON_FileReference::SizeOf </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="abddd0e188e40d1d7b97acf503c553428"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abddd0e188e40d1d7b97acf503c553428">&#9670;&nbsp;</a></span>StatusFromUnsigned()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#ae6dad3944d37be0da31bc0504cc71b46">ON_FileReference::Status</a> ON_FileReference::StatusFromUnsigned </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>full_path_status_as_unsigned</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a737a95d4dae41ef8d514d97289b34ebc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a737a95d4dae41ef8d514d97289b34ebc">&#9670;&nbsp;</a></span>UpdateContentHash()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_FileReference::UpdateContentHash </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a21d869fbbea601cbe6b61e71d9a81f58"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a21d869fbbea601cbe6b61e71d9a81f58">&#9670;&nbsp;</a></span>Write() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_FileReference::Write </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bUseArchiveDirectoryAsBasePath</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../db/d16/class_o_n___binary_archive.html">ON_BinaryArchive</a> &amp;&#160;</td>
<td class="paramname"><em>archive</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">bUseArchiveBasePath</td><td>[in] If bUseArchiveBasePath is true and a file is being written, then the base path of the file being written use used as the base path to calculate the relative path. If bUseArchiveBasePath is false, then the current value of <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#afdf782ac9c7d9a635447f50db50e6119">RelativePath()</a> is saved in the archive.</td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a0b14fb0f55f372cbf63da8546dc5a2ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0b14fb0f55f372cbf63da8546dc5a2ff">&#9670;&nbsp;</a></span>Write() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_FileReference::Write </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>base_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bBasePathIncludesFileName</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../db/d16/class_o_n___binary_archive.html">ON_BinaryArchive</a> &amp;&#160;</td>
<td class="paramname"><em>archive</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base_path</td><td>[in] If base_path is not empty, then the relative path saved in the archive will be calculated from <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#a3eaf822c1004c7c1d6d5a5897bbd9309">FullPath()</a> and base_path. If base_path is nullptr or empty, then <a class="el" href="../../d8/dfd/class_o_n___file_reference.html#afdf782ac9c7d9a635447f50db50e6119">RelativePath()</a> is saved in the archive.</td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a06f1799b2ed593bd0f8c9270a9719ec2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a06f1799b2ed593bd0f8c9270a9719ec2">&#9670;&nbsp;</a></span>Unset</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="../../d8/dfd/class_o_n___file_reference.html">ON_FileReference</a> ON_FileReference::Unset</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div><!-- contents -->
<!-- HTML footer for doxygen 1.8.13-->
<!-- start footer part -->
</div> <!-- page-content -->
<hr class="footer"/><address class="footer"><small>
Generated on Sat Feb 3 2018 11:08:30 for openNURBS SDK Help by <a href="http://www.doxygen.org/index.html">
<!-- <img class="footer" src="../../doxygen.png" alt="doxygen"/> -->
Doxygen
</a> 1.8.13
</small></address>
</div> <!-- container -->
<!-- doxy-boot -->
<script type="text/javascript" src="../../doxy-boot.js"></script>
</body>
</html>