Files
opennurbs/6/d1/d6e/class_o_n___file_system_path.html
Bozo 2ea16cc86c Publish!
Generated from TESTING
2018-01-26 12:40:11 +00:00

1482 lines
74 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.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>openNURBS SDK Help: ON_FileSystemPath 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="../../dynsections.js"></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>
<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="projectalign" style="padding-left: 0.5em;">
<div id="projectname">openNURBS SDK Help
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- 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><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</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="../../d7/dde/class_o_n___file_system_path-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ON_FileSystemPath 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:ae6a9483116ab6d025cfdf11161e19485"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ae6a9483116ab6d025cfdf11161e19485">PathId</a> : unsigned int { <a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ae6a9483116ab6d025cfdf11161e19485ac9f88e098f6fe4e4e112eeb05ccb9671">PathId::Unset</a> = 0,
<a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ae6a9483116ab6d025cfdf11161e19485a50959d32c8deb5577def15a3b1471f7e">PathId::DesktopDirectory</a> = 1,
<a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ae6a9483116ab6d025cfdf11161e19485a2d640911e904eb045ac3e202270c1207">PathId::DocumentsDirectory</a> = 2,
<a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ae6a9483116ab6d025cfdf11161e19485a762a69478ed9182c4bf21c1097c7516d">PathId::DownloadsDirectory</a> = 3
}</td></tr>
<tr class="memdesc:ae6a9483116ab6d025cfdf11161e19485"><td class="mdescLeft">&#160;</td><td class="mdescRight">ids used by ON_FileSystemPath::GetPath() <a href="../../d1/d6e/class_o_n___file_system_path.html#ae6a9483116ab6d025cfdf11161e19485">More...</a><br /></td></tr>
<tr class="separator:ae6a9483116ab6d025cfdf11161e19485"><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:af8fee8aee148bbcf87ea9cefe46eeba5"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#af8fee8aee148bbcf87ea9cefe46eeba5">CleanPath</a> (bool bTrimLeft, bool bTrimRight, bool bAllowWindowsUNCHostNameOrDiskLetter, bool bDeleteWindowsUNCHostNameOrDiskLetter, const wchar_t directory_separator, const wchar_t *dirty_path)</td></tr>
<tr class="separator:af8fee8aee148bbcf87ea9cefe46eeba5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae0eee0cb8ad7a0de1dc90bc8db0fb9d6"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ae0eee0cb8ad7a0de1dc90bc8db0fb9d6">CleanPath</a> (const wchar_t *dirty_path)</td></tr>
<tr class="separator:ae0eee0cb8ad7a0de1dc90bc8db0fb9d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa551b0bd3acdeed45adc3a6bd98b6aa5"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#aa551b0bd3acdeed45adc3a6bd98b6aa5">CombinePaths</a> (const wchar_t *left_side, bool bLeftSideContainsFileName, const wchar_t *right_side, bool bRightSideContainsFileName, bool bAppendTrailingDirectorySeparator)</td></tr>
<tr class="separator:aa551b0bd3acdeed45adc3a6bd98b6aa5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afca8ecff11e752acfa848b141a724d59"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#afca8ecff11e752acfa848b141a724d59">CurrentDirectory</a> (bool bWithTrailingDirectorySeparator)</td></tr>
<tr class="separator:afca8ecff11e752acfa848b141a724d59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc86717371914c8a0e438733e9ac213a"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#abc86717371914c8a0e438733e9ac213a">DirectoryFromPath</a> (const wchar_t *path)</td></tr>
<tr class="separator:abc86717371914c8a0e438733e9ac213a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ad8a4a324313bc01318d4adbb1c8326"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a8ad8a4a324313bc01318d4adbb1c8326">FileNameExtensionFromPath</a> (const wchar_t *path)</td></tr>
<tr class="separator:a8ad8a4a324313bc01318d4adbb1c8326"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae93a38aa63e9dcc0bcd2b0ae75db855f"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ae93a38aa63e9dcc0bcd2b0ae75db855f">FileNameFromPath</a> (const wchar_t *path, bool bIncludeExtension)</td></tr>
<tr class="separator:ae93a38aa63e9dcc0bcd2b0ae75db855f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56800da7050ed5f540136e4988d50ecb"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a56800da7050ed5f540136e4988d50ecb">FilePathHas3dmExtension</a> (const wchar_t *file_path, bool bAllow3dmbakExtension)</td></tr>
<tr class="separator:a56800da7050ed5f540136e4988d50ecb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0a16cebe01d806a9710b5fac1c99467"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#aa0a16cebe01d806a9710b5fac1c99467">FilePathHas3dmExtension</a> (const char *file_path, bool bAllow3dmbakExtension)</td></tr>
<tr class="separator:aa0a16cebe01d806a9710b5fac1c99467"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b4349881117d108adefe337565c9281"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a6b4349881117d108adefe337565c9281">FullPathFromRelativePath</a> (const wchar_t *base_path, bool bBasePathIncludesFileName, const wchar_t *relative_path)</td></tr>
<tr class="separator:a6b4349881117d108adefe337565c9281"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed84407a71bad97021051c233932e7fe"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#aed84407a71bad97021051c233932e7fe">IsDirectory</a> (const char *path)</td></tr>
<tr class="separator:aed84407a71bad97021051c233932e7fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1cfd31bc0b44c76243916c6806011ac3"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a1cfd31bc0b44c76243916c6806011ac3">IsDirectory</a> (const wchar_t *path)</td></tr>
<tr class="separator:a1cfd31bc0b44c76243916c6806011ac3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76b807e4d110d13df7c84345e272ebef"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a76b807e4d110d13df7c84345e272ebef">IsDirectorySeparator</a> (char c, bool bAllowAlternate)</td></tr>
<tr class="separator:a76b807e4d110d13df7c84345e272ebef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4beb1130d583f7f31e892ed15225568d"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a4beb1130d583f7f31e892ed15225568d">IsDirectorySeparator</a> (wchar_t c, bool bAllowAlternate)</td></tr>
<tr class="separator:a4beb1130d583f7f31e892ed15225568d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae051f8e205f2beb48279369139f74798"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ae051f8e205f2beb48279369139f74798">IsFile</a> (const char *path)</td></tr>
<tr class="separator:ae051f8e205f2beb48279369139f74798"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af93695f295a01d7679cb2c15b71ecaee"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#af93695f295a01d7679cb2c15b71ecaee">IsFile</a> (const wchar_t *path)</td></tr>
<tr class="separator:af93695f295a01d7679cb2c15b71ecaee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d60a4d7076796a32a317192fecf07ff"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a1d60a4d7076796a32a317192fecf07ff">IsRelativePath</a> (const wchar_t *path, const wchar_t directory_separator)</td></tr>
<tr class="separator:a1d60a4d7076796a32a317192fecf07ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade43db3a709e250870f50d7cb3225a99"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ade43db3a709e250870f50d7cb3225a99">IsRelativePath</a> (const wchar_t *path)</td></tr>
<tr class="separator:ade43db3a709e250870f50d7cb3225a99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0b29a6d9930c740f716b504ff9136cb"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#aa0b29a6d9930c740f716b504ff9136cb">IsValidFileName</a> (const char *file_name, bool bAllPlatforms)</td></tr>
<tr class="separator:aa0b29a6d9930c740f716b504ff9136cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e206196c42ab656c66d807fcd27988b"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a3e206196c42ab656c66d807fcd27988b">IsValidFileName</a> (const wchar_t *file_name, bool bAllPlatforms)</td></tr>
<tr class="separator:a3e206196c42ab656c66d807fcd27988b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f7a079873f50e6ffe3989ddcb4f9825"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a2f7a079873f50e6ffe3989ddcb4f9825">PathExists</a> (const char *path)</td></tr>
<tr class="separator:a2f7a079873f50e6ffe3989ddcb4f9825"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a389606a8c40e64d52df288fa63f9f8e8"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a389606a8c40e64d52df288fa63f9f8e8">PathExists</a> (const wchar_t *path)</td></tr>
<tr class="separator:a389606a8c40e64d52df288fa63f9f8e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f766e8c9612d15486bc96dbc0e5f3fe"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a3f766e8c9612d15486bc96dbc0e5f3fe">PlatformPath</a> (<a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ae6a9483116ab6d025cfdf11161e19485">ON_FileSystemPath::PathId</a> path_id)</td></tr>
<tr class="separator:a3f766e8c9612d15486bc96dbc0e5f3fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cb9362f3b1f40104ba3cd0b98981389"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a9cb9362f3b1f40104ba3cd0b98981389">PlatformPathIgnoreCase</a> ()</td></tr>
<tr class="separator:a9cb9362f3b1f40104ba3cd0b98981389"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1093d3885aebb04afc2d33537752e339"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a1093d3885aebb04afc2d33537752e339">RelativePath</a> (const wchar_t *full_path, bool bFullPathIncludesFileName, const wchar_t *base_path, bool bBasePathIncludesFileName)</td></tr>
<tr class="separator:a1093d3885aebb04afc2d33537752e339"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1c28554555392a9c6ffc0672bd4339e"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ae1c28554555392a9c6ffc0672bd4339e">RemoveFileName</a> (const wchar_t *path, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *file_name)</td></tr>
<tr class="separator:ae1c28554555392a9c6ffc0672bd4339e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6bb35f0d2cc21a99b746cc11b44184b0"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a6bb35f0d2cc21a99b746cc11b44184b0">RemoveVolumeName</a> (const wchar_t *path, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *volume_name)</td></tr>
<tr class="separator:a6bb35f0d2cc21a99b746cc11b44184b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6b7e23142f04252e7e33f6ddb746417"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ac6b7e23142f04252e7e33f6ddb746417">SplitPath</a> (const char *path, <a class="el" href="../../d2/d3b/class_o_n___string.html">ON_String</a> *volume, <a class="el" href="../../d2/d3b/class_o_n___string.html">ON_String</a> *dir, <a class="el" href="../../d2/d3b/class_o_n___string.html">ON_String</a> *file_name_stem, <a class="el" href="../../d2/d3b/class_o_n___string.html">ON_String</a> *file_name_ext)</td></tr>
<tr class="separator:ac6b7e23142f04252e7e33f6ddb746417"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada49b8eac5f4ed9a5a3363202e9284f5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ada49b8eac5f4ed9a5a3363202e9284f5">SplitPath</a> (const char *path, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *volume, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *dir, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *file_name_stem, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *file_name_ext)</td></tr>
<tr class="separator:ada49b8eac5f4ed9a5a3363202e9284f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42cf836992c6065461529427ef039ed2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a42cf836992c6065461529427ef039ed2">SplitPath</a> (const wchar_t *path, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *volume, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *dir, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *file_name_stem, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *file_name_ext)</td></tr>
<tr class="separator:a42cf836992c6065461529427ef039ed2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a188c633784c9155768f95ce850315c85"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a188c633784c9155768f95ce850315c85">SplitPath</a> (const wchar_t *path, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *volume, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *dir, <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> *file_name_stem_and_extension)</td></tr>
<tr class="separator:a188c633784c9155768f95ce850315c85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fd28cbbdbc67d9ecb34282dfff71297"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a9fd28cbbdbc67d9ecb34282dfff71297">VolumeAndDirectoryFromPath</a> (const wchar_t *path)</td></tr>
<tr class="separator:a9fd28cbbdbc67d9ecb34282dfff71297"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45222bfc55d37169c54b0ac13cc29e37"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a45222bfc55d37169c54b0ac13cc29e37">VolumeFromPath</a> (const wchar_t *path)</td></tr>
<tr class="separator:a45222bfc55d37169c54b0ac13cc29e37"><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:a551e205ad74cd752b42ee99c8b3df59b"><td class="memItemLeft" align="right" valign="top">static const wchar_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a551e205ad74cd752b42ee99c8b3df59b">AlternateDirectorySeparator</a></td></tr>
<tr class="separator:a551e205ad74cd752b42ee99c8b3df59b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63a93220ec63160b28218856f0456433"><td class="memItemLeft" align="right" valign="top">static const char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#a63a93220ec63160b28218856f0456433">AlternateDirectorySeparatorAsChar</a></td></tr>
<tr class="separator:a63a93220ec63160b28218856f0456433"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae9819121b9ebd432e557564cbf544a6"><td class="memItemLeft" align="right" valign="top">static const wchar_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#aae9819121b9ebd432e557564cbf544a6">DirectorySeparator</a></td></tr>
<tr class="separator:aae9819121b9ebd432e557564cbf544a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6bb6fa41402f20e8ffeec11dc5828f2"><td class="memItemLeft" align="right" valign="top">static const char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ab6bb6fa41402f20e8ffeec11dc5828f2">DirectorySeparatorAsChar</a></td></tr>
<tr class="separator:ab6bb6fa41402f20e8ffeec11dc5828f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="ae6a9483116ab6d025cfdf11161e19485"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6a9483116ab6d025cfdf11161e19485">&#9670;&nbsp;</a></span>PathId</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="../../d1/d6e/class_o_n___file_system_path.html#ae6a9483116ab6d025cfdf11161e19485">ON_FileSystemPath::PathId</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>ids used by ON_FileSystemPath::GetPath() </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ae6a9483116ab6d025cfdf11161e19485ac9f88e098f6fe4e4e112eeb05ccb9671"></a>Unset&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="ae6a9483116ab6d025cfdf11161e19485a50959d32c8deb5577def15a3b1471f7e"></a>DesktopDirectory&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="ae6a9483116ab6d025cfdf11161e19485a2d640911e904eb045ac3e202270c1207"></a>DocumentsDirectory&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="ae6a9483116ab6d025cfdf11161e19485a762a69478ed9182c4bf21c1097c7516d"></a>DownloadsDirectory&#160;</td><td class="fielddoc"></td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="af8fee8aee148bbcf87ea9cefe46eeba5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af8fee8aee148bbcf87ea9cefe46eeba5">&#9670;&nbsp;</a></span>CleanPath() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::CleanPath </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bTrimLeft</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bTrimRight</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bAllowWindowsUNCHostNameOrDiskLetter</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bDeleteWindowsUNCHostNameOrDiskLetter</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const wchar_t&#160;</td>
<td class="paramname"><em>directory_separator</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>dirty_path</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">
<p>Description: Condenses ///&lt; to / Condenses /./ to / Condenses /sfsdf/../ to / Sets all directory separators to directory_separator. Parameters: bAllowWindowsUNCHostNameOrDiskLetter - [in] If bAllowWindowsUNCHostNameOrDiskLetter and the path begins with \HostName followed by a directory separator, then the initial \ is not condensed. If the path begins with X: followed by a directory separator, where "X" is a single letter in the range A to Z or a to z, then the path is considered valid. bDeleteWindowsUNCHostNameOrDiskLetter - [in] If bAllowWindowsUNCHostNameOrDiskLetter is true and the path begins with a UNC host name or disk letter followed by a directory separator, then host name or disk letter is deleted. This is useful when using paths from a Windows platform on a non-Windows platform. directory_separator - [in] If 0 == directory_separator, then the first directory separator is kept when condensing occurs. ON_wString::FileSystemPathSeparator is a good choice if you want to use the current runtime's separator. dirty_path - [in] path to clean. Return: Cleaned path. </p>
</div>
</div>
<a id="ae0eee0cb8ad7a0de1dc90bc8db0fb9d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae0eee0cb8ad7a0de1dc90bc8db0fb9d6">&#9670;&nbsp;</a></span>CleanPath() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::CleanPath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>dirty_path</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">
<p>Description: Condenses ///&lt; to / Condenses /./ to / Condenses /sfsdf/../ to / Trims left and right white space. Sets all directory separators to <a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#aae9819121b9ebd432e557564cbf544a6">ON_FileSystemPath::DirectorySeparator</a>. If the Platform is not windows, the UNC host names and volume letters are deleted. </p>
</div>
</div>
<a id="aa551b0bd3acdeed45adc3a6bd98b6aa5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa551b0bd3acdeed45adc3a6bd98b6aa5">&#9670;&nbsp;</a></span>CombinePaths()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::CombinePaths </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>left_side</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bLeftSideContainsFileName</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>right_side</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bRightSideContainsFileName</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bAppendTrailingDirectorySeparator</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">
<p>Description: Combine paths into a single valid path name. Remove internal .. and . directory references. If necessary remove file names. Parameters: left_side - [in] bLeftSideContainsFileName - [in] true if left_side path ends in a file name and that file name is removed and discarded. right_side - [in] bRightSideContainsFileName - [in] true if right_side path ends in a file name. If bAppendTrailingDirectorySeparator is true, that file name is removed and discarded. If bAppendTrailingDirectorySeparator is false, the returned path ends in that file name. bAppendTrailingDirectorySeparator - [in] If true, any file names are removed and a directory separator is appended to the returned string. Returns: a path made left_side + right_side Remarks: This function manipulates string information. This function does not look at storage media to see if the paths currently exist. </p>
</div>
</div>
<a id="afca8ecff11e752acfa848b141a724d59"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afca8ecff11e752acfa848b141a724d59">&#9670;&nbsp;</a></span>CurrentDirectory()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::CurrentDirectory </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bWithTrailingDirectorySeparator</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">
<p>Parameters: bWithTrailingDirectorySeparator - [in] true - returned path will have a trailing directory separator. false - returned path will not have a trailing directory separator. Returns: The platform current working directory which should be the directory where ON::OpenFile("fname","r") would look for a file named "fname". </p>
</div>
</div>
<a id="abc86717371914c8a0e438733e9ac213a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abc86717371914c8a0e438733e9ac213a">&#9670;&nbsp;</a></span>DirectoryFromPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::DirectoryFromPath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</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">
<p>Parameters: path - [in] path to split Returns: The directory portion of the path. </p>
</div>
</div>
<a id="a8ad8a4a324313bc01318d4adbb1c8326"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ad8a4a324313bc01318d4adbb1c8326">&#9670;&nbsp;</a></span>FileNameExtensionFromPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::FileNameExtensionFromPath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</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">
<p>Parameters: path - [in] path to split Returns: The file name extension portion of the path, inlcuding the leading period or "dot". </p>
</div>
</div>
<a id="ae93a38aa63e9dcc0bcd2b0ae75db855f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae93a38aa63e9dcc0bcd2b0ae75db855f">&#9670;&nbsp;</a></span>FileNameFromPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::FileNameFromPath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bIncludeExtension</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">
<p>Parameters: path - [in] path to split bIncludeExtension - [in] Returns: The file name portion of the path. </p>
</div>
</div>
<a id="a56800da7050ed5f540136e4988d50ecb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a56800da7050ed5f540136e4988d50ecb">&#9670;&nbsp;</a></span>FilePathHas3dmExtension() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::FilePathHas3dmExtension </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>file_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bAllow3dmbakExtension</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="aa0a16cebe01d806a9710b5fac1c99467"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa0a16cebe01d806a9710b5fac1c99467">&#9670;&nbsp;</a></span>FilePathHas3dmExtension() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::FilePathHas3dmExtension </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>file_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bAllow3dmbakExtension</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="a6b4349881117d108adefe337565c9281"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6b4349881117d108adefe337565c9281">&#9670;&nbsp;</a></span>FullPathFromRelativePath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::FullPathFromRelativePath </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">const wchar_t *&#160;</td>
<td class="paramname"><em>relative_path</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="aed84407a71bad97021051c233932e7fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aed84407a71bad97021051c233932e7fe">&#9670;&nbsp;</a></span>IsDirectory() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::IsDirectory </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>path</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="a1cfd31bc0b44c76243916c6806011ac3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1cfd31bc0b44c76243916c6806011ac3">&#9670;&nbsp;</a></span>IsDirectory() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::IsDirectory </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</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="a76b807e4d110d13df7c84345e272ebef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a76b807e4d110d13df7c84345e272ebef">&#9670;&nbsp;</a></span>IsDirectorySeparator() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::IsDirectorySeparator </td>
<td>(</td>
<td class="paramtype">char&#160;</td>
<td class="paramname"><em>c</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bAllowAlternate</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="a4beb1130d583f7f31e892ed15225568d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4beb1130d583f7f31e892ed15225568d">&#9670;&nbsp;</a></span>IsDirectorySeparator() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::IsDirectorySeparator </td>
<td>(</td>
<td class="paramtype">wchar_t&#160;</td>
<td class="paramname"><em>c</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bAllowAlternate</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="ae051f8e205f2beb48279369139f74798"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae051f8e205f2beb48279369139f74798">&#9670;&nbsp;</a></span>IsFile() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::IsFile </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>path</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="af93695f295a01d7679cb2c15b71ecaee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af93695f295a01d7679cb2c15b71ecaee">&#9670;&nbsp;</a></span>IsFile() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::IsFile </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</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="a1d60a4d7076796a32a317192fecf07ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1d60a4d7076796a32a317192fecf07ff">&#9670;&nbsp;</a></span>IsRelativePath() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::IsRelativePath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const wchar_t&#160;</td>
<td class="paramname"><em>directory_separator</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">
<p>Parameters: path - [in] path to test directory_separator - [in] If 0 == directory_separator, then either ON_wString::FileSystemPathSeparator or ON_wString::AlternateFileSystemPathSeparator is permitted as a directory separator. ON_wString::FileSystemPathSeparator is a good choice if you want to use the current runtime's separator. Returns: True if path begins with ../ or ./ </p>
</div>
</div>
<a id="ade43db3a709e250870f50d7cb3225a99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade43db3a709e250870f50d7cb3225a99">&#9670;&nbsp;</a></span>IsRelativePath() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::IsRelativePath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</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">
<p>Parameters: path - [in] path to test Returns: True if path begins with ../ or ..\ or ./ or .\ </p>
</div>
</div>
<a id="aa0b29a6d9930c740f716b504ff9136cb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa0b29a6d9930c740f716b504ff9136cb">&#9670;&nbsp;</a></span>IsValidFileName() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::IsValidFileName </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>file_name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bAllPlatforms</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">
<p>Description: Determine if the file_name string is a permitted file name. Valid file names must be non empty, cannot have two periods in a row, and cannot contain directory separators, tildes, and other platform specific values. Parameters: file_name - [in] string to test. bAllPlatforms - [in] If true, test name for all supported platforms. Returns: True if the string can be a file name. </p>
</div>
</div>
<a id="a3e206196c42ab656c66d807fcd27988b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3e206196c42ab656c66d807fcd27988b">&#9670;&nbsp;</a></span>IsValidFileName() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::IsValidFileName </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>file_name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>bAllPlatforms</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">
<p>Description: Determine if the file_name string is a permitted file name. Valid file names must be non empty, cannot have two periods in a row, and cannot contain directory separators, tildes, and other platform specific values. Parameters: file_name - [in] string to test. bAllPlatforms - [in] If true, test name for all supported platforms. Returns: True if the string can be a file name. </p>
</div>
</div>
<a id="a2f7a079873f50e6ffe3989ddcb4f9825"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2f7a079873f50e6ffe3989ddcb4f9825">&#9670;&nbsp;</a></span>PathExists() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::PathExists </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>path</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="a389606a8c40e64d52df288fa63f9f8e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a389606a8c40e64d52df288fa63f9f8e8">&#9670;&nbsp;</a></span>PathExists() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::PathExists </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</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="a3f766e8c9612d15486bc96dbc0e5f3fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f766e8c9612d15486bc96dbc0e5f3fe">&#9670;&nbsp;</a></span>PlatformPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::PlatformPath </td>
<td>(</td>
<td class="paramtype"><a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#ae6a9483116ab6d025cfdf11161e19485">ON_FileSystemPath::PathId</a>&#160;</td>
<td class="paramname"><em>path_id</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">
<p>Parameters: path_id - [in] Specifies path to get. Returns: Requested path. If the path does not exist in the current context, the empty string is returned. </p>
</div>
</div>
<a id="a9cb9362f3b1f40104ba3cd0b98981389"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9cb9362f3b1f40104ba3cd0b98981389">&#9670;&nbsp;</a></span>PlatformPathIgnoreCase()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ON_FileSystemPath::PlatformPathIgnoreCase </td>
<td>(</td>
<td class="paramname"></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">
<p>Returns: true if the platform file system ignores case. Remarks: Windows and default installations of OS X 10.10.3, and default installations of the UNIX terminal interface in OS X 10.10.3 and later ignore case. In the case of OX X, a user can override the default setting. </p>
</div>
</div>
<a id="a1093d3885aebb04afc2d33537752e339"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1093d3885aebb04afc2d33537752e339">&#9670;&nbsp;</a></span>RelativePath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::RelativePath </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>bFullPathIncludesFileName</em>, </td>
</tr>
<tr>
<td class="paramkey"></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>&#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">
<p>Description: Get a the relative path from base_path to full_path. Parameters: full_path - [in] base_path - [in]</p>
<p>Example full_path = L"c:/a/b/c/d/somefile.txt"; base_path = L"C:/A/B/X/Y/Z/model.3dm"; ON_wString::GetRelativePath(full_path,base_path) returns L"../../../c/d/somefile.txt"</p>
<p>Example full_path = L"c:/a/b/somefile.txt"; base_path = L"C:/A/B/model.3dm"; ON_wString::GetRelativePath(full_path,base_path) returns L"./somefile.txt"</p>
<p>Remarks: Path separators on the input can be mixed. Path separators on the returned relative path are ON_wString::FileSystemPathSeparator </p>
</div>
</div>
<a id="ae1c28554555392a9c6ffc0672bd4339e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1c28554555392a9c6ffc0672bd4339e">&#9670;&nbsp;</a></span>RemoveFileName()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::RemoveFileName </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</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> *&#160;</td>
<td class="paramname"><em>file_name</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">
<p>Description: Removes file name from path. Parameters: path - [in] file system path with a file name. file_name - [out] If file_name is not nullptr, the removed portion of path is returned here. Returns: path with any file name removed. Remarks: This function uses on_wsplitpath() to decide if the path ends with characters that could be a file name. It does not inspect the file system to see if the file exists. </p>
</div>
</div>
<a id="a6bb35f0d2cc21a99b746cc11b44184b0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6bb35f0d2cc21a99b746cc11b44184b0">&#9670;&nbsp;</a></span>RemoveVolumeName()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::RemoveVolumeName </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</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> *&#160;</td>
<td class="paramname"><em>volume_name</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">
<p>Description: Removes Windows volume name from path. Parameters: path - [in] file system path volume_name - [out] If volume_name is not nullptr, the removed portion of path is returned here. Returns: path with any volume name removed. Remarks: This function uses on_wsplitpath() to decide if the path begins with characters that could be a volume name. It does not inspect the file system to see if the volume exists. </p>
</div>
</div>
<a id="ac6b7e23142f04252e7e33f6ddb746417"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac6b7e23142f04252e7e33f6ddb746417">&#9670;&nbsp;</a></span>SplitPath() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void ON_FileSystemPath::SplitPath </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d2/d3b/class_o_n___string.html">ON_String</a> *&#160;</td>
<td class="paramname"><em>volume</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d2/d3b/class_o_n___string.html">ON_String</a> *&#160;</td>
<td class="paramname"><em>dir</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d2/d3b/class_o_n___string.html">ON_String</a> *&#160;</td>
<td class="paramname"><em>file_name_stem</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d2/d3b/class_o_n___string.html">ON_String</a> *&#160;</td>
<td class="paramname"><em>file_name_ext</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">
<p>Description: Find the locations in a path the specify the drive, directory, file name and file extension. Parameters: path - [in] path to split volume - [out] (pass null if you don't need the volume) If volume is not null and the path parameter begins with a Windows volume specification, *volume will either be the Windows volume letter followed by the trailing colon or a Windows UNC \&lt;hostname&gt;. Otherwise volume will be the empty string. dir - [out] (pass null if you don't need the directory) If dir is not null and the path parameter contains a directory specification, then the returned value of *dir will be the directory specification including the trailing slash. file_name_stem - [out] (pass null if you don't need the file name stem) If file_name_stem is not null and the path parameter contains a file name specification, then the returned value of *file_name_stem will be the file name stem. file_name_ext - [out] (pass null if you don't need the extension) If file_name_ext is not null and the path parameter contains a file name extension specification, then the returned value of file_name_ext will be the file name extension including the initial '.' character. Remarks: This function will treat a front slash ( / ) and a back slash ( \ ) as directory separators. Because this function parses file names store in .3dm files and the .3dm file may have been written on a Windows computer and then read on a another computer, it looks for a volume specification even when the operating system is not Windows. This function will not return an directory that does not end with a trailing slash. This function will not return an empty filename and a non-empty extension. This function parses the path string according to these rules. It does not check the actual file system to see if the answer is correct. See Also: on_splitpath </p>
</div>
</div>
<a id="ada49b8eac5f4ed9a5a3363202e9284f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada49b8eac5f4ed9a5a3363202e9284f5">&#9670;&nbsp;</a></span>SplitPath() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void ON_FileSystemPath::SplitPath </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>path</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> *&#160;</td>
<td class="paramname"><em>volume</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> *&#160;</td>
<td class="paramname"><em>dir</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> *&#160;</td>
<td class="paramname"><em>file_name_stem</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> *&#160;</td>
<td class="paramname"><em>file_name_ext</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="a42cf836992c6065461529427ef039ed2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42cf836992c6065461529427ef039ed2">&#9670;&nbsp;</a></span>SplitPath() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void ON_FileSystemPath::SplitPath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</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> *&#160;</td>
<td class="paramname"><em>volume</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> *&#160;</td>
<td class="paramname"><em>dir</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> *&#160;</td>
<td class="paramname"><em>file_name_stem</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> *&#160;</td>
<td class="paramname"><em>file_name_ext</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="a188c633784c9155768f95ce850315c85"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a188c633784c9155768f95ce850315c85">&#9670;&nbsp;</a></span>SplitPath() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void ON_FileSystemPath::SplitPath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</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> *&#160;</td>
<td class="paramname"><em>volume</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> *&#160;</td>
<td class="paramname"><em>dir</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> *&#160;</td>
<td class="paramname"><em>file_name_stem_and_extension</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="a9fd28cbbdbc67d9ecb34282dfff71297"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9fd28cbbdbc67d9ecb34282dfff71297">&#9670;&nbsp;</a></span>VolumeAndDirectoryFromPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::VolumeAndDirectoryFromPath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</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">
<p>Parameters: path - [in] path to split Returns: The volume and directory portion of the path. </p>
</div>
</div>
<a id="a45222bfc55d37169c54b0ac13cc29e37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a45222bfc55d37169c54b0ac13cc29e37">&#9670;&nbsp;</a></span>VolumeFromPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="../../d1/d11/class_o_n__w_string.html">ON_wString</a> ON_FileSystemPath::VolumeFromPath </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>path</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">
<p>Parameters: path - [in] path to split Returns: The volume portion of the path. </p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a551e205ad74cd752b42ee99c8b3df59b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a551e205ad74cd752b42ee99c8b3df59b">&#9670;&nbsp;</a></span>AlternateDirectorySeparator</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const wchar_t ON_FileSystemPath::AlternateDirectorySeparator</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="a63a93220ec63160b28218856f0456433"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a63a93220ec63160b28218856f0456433">&#9670;&nbsp;</a></span>AlternateDirectorySeparatorAsChar</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const char ON_FileSystemPath::AlternateDirectorySeparatorAsChar</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="aae9819121b9ebd432e557564cbf544a6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aae9819121b9ebd432e557564cbf544a6">&#9670;&nbsp;</a></span>DirectorySeparator</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const wchar_t ON_FileSystemPath::DirectorySeparator</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="ab6bb6fa41402f20e8ffeec11dc5828f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab6bb6fa41402f20e8ffeec11dc5828f2">&#9670;&nbsp;</a></span>DirectorySeparatorAsChar</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const char ON_FileSystemPath::DirectorySeparatorAsChar</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Platform dependent character used to separate directory names. On Windows platforms: <a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#aae9819121b9ebd432e557564cbf544a6">ON_FileSystemPath::DirectorySeparator</a> = <a class="el" href="../../d1/d11/class_o_n__w_string.html#a718636bfb9d4177a18761b8ed6562824" title="Unicode REVERSE SOLIDUS U+005C. ">ON_wString::Backslash</a>. On UNIX (including modern Apple) platforms: <a class="el" href="../../d1/d6e/class_o_n___file_system_path.html#aae9819121b9ebd432e557564cbf544a6">ON_FileSystemPath::DirectorySeparator</a> = <a class="el" href="../../d1/d11/class_o_n__w_string.html#a4aa245420f53c181b354801b8ad80042" title="Unicode SOLIDUS U+002F. ">ON_wString::Slash</a>. </p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Jan 26 2018 12:38:21 for openNURBS SDK Help by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.14
</small></address>
</body>
</html>