1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-09 13:22:24 +03:00

Compare commits

..

10 Commits

Author SHA1 Message Date
inv
096cf1a146 Update 2022-11-04 13:27:23 +03:00
inv
c31a49b778 Update 2022-11-04 13:20:37 +03:00
inv
bad68e8523 Update 2022-11-04 13:02:30 +03:00
inv
4213cad6ed Update 2022-11-04 13:02:08 +03:00
inv
234ee68005 Update 2022-11-04 13:02:08 +03:00
inv
d348d04593 Update 2022-11-04 13:02:08 +03:00
inv
b24aa87dc3 CR3 adding get files 2022-11-04 13:02:07 +03:00
inv
12d8001d20 Correction Adaptor3d_Curve.cxx 2022-11-03 18:55:30 +03:00
inv
fd4af9bf4e Update 2022-11-03 18:50:02 +03:00
smoskvin
d404757de0 Increment OCCT version up to 7.8.0dev 2022-11-02 22:23:14 +03:00
1514 changed files with 44384 additions and 44370 deletions

View File

@@ -3,6 +3,10 @@
OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/occt_macros")
if (NOT DEFINED INSTALL_DRACO)
set (INSTALL_DRACO OFF CACHE BOOL "${INSTALL_DRACO_DESCR}")
endif()
if (NOT DEFINED 3RDPARTY_DRACO_DIR)
set (3RDPARTY_DRACO_DIR "" CACHE PATH "The directory containing Draco")
endif()
@@ -11,24 +15,14 @@ if (NOT DEFINED 3RDPARTY_DRACO_INCLUDE_DIR)
set (3RDPARTY_DRACO_INCLUDE_DIR "" CACHE PATH "The directory containing headers of the Draco")
endif()
if (NOT DEFINED 3RDPARTY_DRACO_LIBRARY)
set (3RDPARTY_DRACO_LIBRARY "" CACHE FILEPATH "Draco library")
if (NOT DEFINED 3RDPARTY_DRACO_LIBRARY OR NOT 3RDPARTY_DRACO_LIBRARY_DIR OR NOT EXISTS "${3RDPARTY_DRACO_LIBRARY_DIR}")
set (3RDPARTY_DRACO_LIBRARY "" CACHE FILEPATH "Draco library" FORCE)
endif()
if (NOT DEFINED 3RDPARTY_DRACO_LIBRARY_DIR)
set (3RDPARTY_DRACO_LIBRARY_DIR "" CACHE PATH "The directory containing Draco library")
endif()
if (WIN32)
if (NOT DEFINED 3RDPARTY_DRACO_LIBRARY_DEBUG)
set (3RDPARTY_DRACO_LIBRARY_DEBUG "" CACHE FILEPATH "Draco debug library")
endif()
if (NOT DEFINED 3RDPARTY_DRACO_LIBRARY_DIR_DEBUG)
set (3RDPARTY_DRACO_LIBRARY_DIR_DEBUG "" CACHE PATH "The directory containing Draco debug library")
endif()
endif()
if (3RDPARTY_DIR AND EXISTS "${3RDPARTY_DIR}")
if (NOT 3RDPARTY_DRACO_DIR OR NOT EXISTS "${3RDPARTY_DRACO_DIR}")
FIND_PRODUCT_DIR("${3RDPARTY_DIR}" draco DRACO_DIR_NAME)
@@ -38,19 +32,20 @@ if (3RDPARTY_DIR AND EXISTS "${3RDPARTY_DIR}")
endif()
endif()
# header
if (NOT 3RDPARTY_DRACO_INCLUDE_DIR OR NOT EXISTS "${3RDPARTY_DRACO_INCLUDE_DIR}")
set (HEADER_NAMES draco)
if (3RDPARTY_DRACO_DIR AND EXISTS "${3RDPARTY_DRACO_DIR}")
set (DRACO_INCLUDE_PATH "${3RDPARTY_DRACO_DIR}/include")
set (DRACO_LIBRARY_PATH "${3RDPARTY_DRACO_DIR}/lib")
endif()
# set 3RDPARTY_DRACO_INCLUDE_DIR as notfound, otherwise find_path can't assign a new value to 3RDPARTY_DRACO_INCLUDE_DIR
set (3RDPARTY_DRACO_INCLUDE_DIR "3RDPARTY_DRACO_INCLUDE_DIR-NOTFOUND" CACHE FILEPATH "The directory containing headers of the Draco" FORCE)
if (NOT 3RDPARTY_DRACO_INCLUDE_DIR)
if (DRACO_INCLUDE_PATH AND EXISTS "${DRACO_INCLUDE_PATH}")
set (3RDPARTY_DRACO_INCLUDE_DIR "${DRACO_INCLUDE_PATH}" CACHE FILEPATH "The directory containing headers of DRACO" FORCE)
endif()
endif()
if (3RDPARTY_DRACO_DIR AND EXISTS "${3RDPARTY_DRACO_DIR}")
find_path (3RDPARTY_DRACO_INCLUDE_DIR NAMES ${HEADER_NAMES}
PATHS ${3RDPARTY_DRACO_DIR}
PATH_SUFFIXES "include"
CMAKE_FIND_ROOT_PATH_BOTH
NO_DEFAULT_PATH)
if (NOT 3RDPARTY_DRACO_LIBRARY_DIR)
if (DRACO_LIBRARY_PATH AND EXISTS "${DRACO_LIBRARY_PATH}")
set (3RDPARTY_DRACO_LIBRARY_DIR "${DRACO_LIBRARY_PATH}" CACHE FILEPATH "The directory containing DRACO library" FORCE)
endif()
endif()
@@ -62,11 +57,11 @@ endif()
if (3RDPARTY_DRACO_DIR AND EXISTS "${3RDPARTY_DRACO_DIR}")
if (NOT 3RDPARTY_DRACO_LIBRARY OR NOT EXISTS "${3RDPARTY_DRACO_LIBRARY}")
set (CMAKE_FIND_LIBRARY_SUFFIXES .lib .a)
set (CMAKE_FIND_LIBRARY_SUFFIXES .lib .so .dylib .a)
set (3RDPARTY_DRACO_LIBRARY "3RDPARTY_DRACO_LIBRARY-NOTFOUND" CACHE FILEPATH "The path to Draco library" FORCE)
find_library (3RDPARTY_DRACO_LIBRARY NAMES ${CSF_Draco}
PATHS "${3RDPARTY_DRACO_DIR}"
PATHS "${3RDPARTY_DRACO_LIBRARY_DIR}"
PATH_SUFFIXES lib
CMAKE_FIND_ROOT_PATH_BOTH
NO_DEFAULT_PATH)
@@ -75,19 +70,27 @@ if (3RDPARTY_DRACO_DIR AND EXISTS "${3RDPARTY_DRACO_DIR}")
set (3RDPARTY_DRACO_LIBRARY_DIR "${3RDPARTY_DRACO_LIBRARY_DIR}" CACHE FILEPATH "The directory containing Draco library" FORCE)
endif()
endif()
endif()
if (WIN32 AND (NOT 3RDPARTY_DRACO_LIBRARY_DEBUG OR NOT EXISTS "${3RDPARTY_DRACO_LIBRARY_DEBUG}"))
set (CMAKE_FIND_LIBRARY_SUFFIXES .lib .a)
set (3RDPARTY_DRACO_LIBRARY_DEBUG "3RDPARTY_DRACO_LIBRARY_DEBUG-NOTFOUND" CACHE FILEPATH "The path to debug Draco library" FORCE)
if (3RDPARTY_DRACO_LIBRARY_DIR AND EXISTS "${3RDPARTY_DRACO_LIBRARY_DIR}")
list (APPEND 3RDPARTY_LIBRARY_DIRS "${3RDPARTY_DRACO_LIBRARY_DIR}")
else()
list (APPEND 3RDPARTY_NO_LIBS 3RDPARTY_DRACO_LIBRARY_DIR)
endif()
find_library (3RDPARTY_DRACO_LIBRARY_DEBUG NAMES ${CSF_Draco}
PATHS "${3RDPARTY_DRACO_DIR}"
PATH_SUFFIXES libd
CMAKE_FIND_ROOT_PATH_BOTH
NO_DEFAULT_PATH)
if (3RDPARTY_DRACO_LIBRARY_DEBUG AND EXISTS "${3RDPARTY_DRACO_LIBRARY_DEBUG}")
get_filename_component (3RDPARTY_DRACO_LIBRARY_DIR_DEBUG "${3RDPARTY_DRACO_LIBRARY_DEBUG}" PATH)
set (3RDPARTY_DRACO_LIBRARY_DIR_DEBUG "${3RDPARTY_DRACO_LIBRARY_DIR_DEBUG}" CACHE FILEPATH "The directory containing debug Draco library" FORCE)
endif()
if (INSTALL_DRACO)
get_filename_component(3RDPARTY_DRACO_LIBRARY_REALPATH ${3RDPARTY_DRACO_LIBRARY} REALPATH)
if (SINGLE_GENERATOR)
install (FILES ${3RDPARTY_DRACO_LIBRARY_REALPATH} DESTINATION "${INSTALL_DIR_LIB}")
else()
install (FILES ${3RDPARTY_DRACO_LIBRARY_REALPATH}
CONFIGURATIONS Release
DESTINATION "${INSTALL_DIR_LIB}")
install (FILES ${3RDPARTY_DRACO_LIBRARY_REALPATH}
CONFIGURATIONS RelWithDebInfo
DESTINATION "${INSTALL_DIR_LIB}i")
install (FILES ${3RDPARTY_DRACO_LIBRARY_REALPATH}
CONFIGURATIONS Debug
DESTINATION "${INSTALL_DIR_LIB}d")
endif()
endif()

View File

@@ -370,10 +370,6 @@ foreach (USED_ITEM ${USED_EXTERNLIB_AND_TOOLKITS})
add_definitions (-DHAVE_GLES2)
endif()
if ("${CURRENT_CSF}" STREQUAL "${CSF_Draco}")
set (CURRENT_CSF "")
set (USED_DRACO 1)
endif()
set (LIBRARY_FROM_CACHE 0)
separate_arguments (CURRENT_CSF)
foreach (CSF_LIBRARY ${CURRENT_CSF})
@@ -401,7 +397,7 @@ foreach (USED_ITEM ${USED_EXTERNLIB_AND_TOOLKITS})
endforeach()
endforeach()
if (NOT ${LIBRARY_FROM_CACHE} AND NOT "${CURRENT_CSF}" STREQUAL "")
if (NOT ${LIBRARY_FROM_CACHE})
# prepare a list from a string with whitespaces
separate_arguments (CURRENT_CSF)
list (APPEND USED_EXTERNAL_LIBS_BY_CURRENT_PROJECT ${CURRENT_CSF})
@@ -412,28 +408,6 @@ foreach (USED_ITEM ${USED_EXTERNLIB_AND_TOOLKITS})
endif()
endforeach()
if (USE_DRACO)
if (USED_DRACO)
set (USED_LIB_RELEASE ${3RDPARTY_DRACO_LIBRARY})
if (WIN32)
set (USED_LIB_DEBUG ${3RDPARTY_DRACO_LIBRARY_DEBUG})
else()
set (USED_LIB_DEBUG ${3RDPARTY_DRACO_LIBRARY})
endif()
set (USED_LIB_CONF)
if (EXISTS ${USED_LIB_DEBUG})
set (USED_LIB_CONF "$<$<CONFIG:DEBUG>:${USED_LIB_DEBUG}>;${USED_LIB_CONF}")
endif()
if (EXISTS ${USED_LIB_RELEASE})
set (USED_LIB_CONF "$<$<CONFIG:RELEASE>:${USED_LIB_RELEASE}>;${USED_LIB_CONF}")
set (USED_LIB_CONF "$<$<CONFIG:RELWITHDEBINFO>:${USED_LIB_RELEASE}>;${USED_LIB_CONF}")
endif()
if (DEFINED USED_LIB_CONF)
set_property (TARGET ${PROJECT_NAME} APPEND PROPERTY LINK_LIBRARIES "${USED_LIB_CONF}")
endif()
endif()
endif()
if (APPLE)
list (FIND USED_EXTERNAL_LIBS_BY_CURRENT_PROJECT X11 IS_X11_FOUND)
if (NOT ${IS_X11_FOUND} EQUAL -1)

29
get.sh Normal file
View File

@@ -0,0 +1,29 @@
#!/bin/bash
problem_file=upgrade.bat
list="master integration"
echo "Getting commit hash"
for name in $list ; do
echo $name
export shorthash_$name=$(git rev-parse --short $name)
echo shorthash_$name=$(eval echo "\$shorthash_${name}")
done
echo "Getting list of commits between master and integration"
list=$(git rev-list --ancestry-path ${shorthash_master}..${shorthash_integration})
echo "Getting commit whose hash matches the hash of commit with problematic file"
for hash in $list ; do
list_changed_files=$(git diff-tree --no-commit-id --name-only -r $hash | sed 's/\// /g' | awk '{ print $NF }')
for changed_file in $list_changed_files; do
if [ "$problem_file" == "$changed_file" ] ; then
echo Reverting:
echo $(git log -1 --format=oneline $hash)
# git revert $hash
hash=$(echo $hash | head -c 10)
echo $hash
git rebase --onto $hash^ $hash
fi
done
done

View File

@@ -13,7 +13,7 @@
//
// Alternatively, this file may be used under the terms of Open CASCADE
// commercial license or contractual agreement.
// branch2
#include <Adaptor3d_Curve.hxx>
#include <Geom_BezierCurve.hxx>

View File

@@ -18,7 +18,6 @@
// paralleling with Intel TBB
#ifdef HAVE_TBB
#pragma comment (lib, "tbbmalloc.lib")
#include <tbb/scalable_allocator.h>
using namespace tbb;
#else

View File

@@ -9,7 +9,6 @@ TKShHealing
TKMesh
TKService
TKHLR
TKTopAlgo
CSF_TclLibs
CSF_TclTkLibs
CSF_XwLibs

View File

@@ -1,4 +1,3 @@
#include <limits>
// Created on: 2015-03-15
// Created by: Danila ULYANOV
// Copyright (c) 2014 OPEN CASCADE SAS
@@ -8,9 +7,8 @@
// This library is free software; you can redistribute it and/or modify it under
// the terms of the GNU Lesser General Public License version 2.1 as published
// by the Free Software Foundation, with special exception defined in the file
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in
// OCCT distribution for complete text of the license and disclaimer of any
// warranty.
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
// distribution for complete text of the license and disclaimer of any warranty.
//
// Alternatively, this file may be used under the terms of Open CASCADE
// commercial license or contractual agreement.
@@ -23,36 +21,36 @@
#include <algorithm>
#include <iostream>
#include <limits>
namespace {
namespace
{
//! Converts the given string to lowercase
//! @param theString the string to be converted
//! @return a converted string (a string in lowercase)
static std::string toLowerCase(std::string theString) {
std::transform(theString.begin(), theString.end(), theString.begin(),
::LowerCase);
return theString;
}
//! Converts the vector of std::strings to a vector of pointers to its data
//! @param theStringList the vector of strings to be converted
//! @return a vector of pointers to the data of given strings
static std::vector<const char *>
convertToRawStringList(const std::vector<std::string> &theStringList) {
const std::size_t aListSize = theStringList.size();
std::vector<const char *> aRawStringList(aListSize);
for (std::size_t anIndex = 0; anIndex < aListSize; ++anIndex) {
aRawStringList[anIndex] = theStringList[anIndex].c_str();
//! Converts the given string to lowercase
//! @param theString the string to be converted
//! @return a converted string (a string in lowercase)
static std::string toLowerCase (std::string theString)
{
std::transform (theString.begin(), theString.end(), theString.begin(), ::LowerCase);
return theString;
}
//! Converts the vector of std::strings to a vector of pointers to its data
//! @param theStringList the vector of strings to be converted
//! @return a vector of pointers to the data of given strings
static std::vector<const char*> convertToRawStringList (const std::vector<std::string>& theStringList)
{
const std::size_t aListSize = theStringList.size();
std::vector<const char*> aRawStringList (aListSize);
for (std::size_t anIndex = 0; anIndex < aListSize; ++anIndex)
{
aRawStringList[anIndex] = theStringList[anIndex].c_str();
}
return aRawStringList;
}
return aRawStringList;
}
} // namespace
const std::size_t ViewerTest_CmdParser::THE_UNNAMED_COMMAND_OPTION_KEY =
(std::numeric_limits<std::size_t>::max)();
const std::size_t ViewerTest_CmdParser::THE_UNNAMED_COMMAND_OPTION_KEY = (std::numeric_limits<std::size_t>::max)();
const std::size_t ViewerTest_CmdParser::THE_HELP_COMMAND_OPTION_KEY = 0;
@@ -60,48 +58,50 @@ const std::size_t ViewerTest_CmdParser::THE_HELP_COMMAND_OPTION_KEY = 0;
// function : ViewerTest_CmdParser
// purpose :
//===============================================================================================
ViewerTest_CmdParser::ViewerTest_CmdParser(const std::string &theDescription)
: myDescription(theDescription) {
AddOption("help|h",
"Prints a short description of the command and its options.");
ViewerTest_CmdParser::ViewerTest_CmdParser (const std::string& theDescription) : myDescription (theDescription)
{
AddOption ("help|h", "Prints a short description of the command and its options.");
}
//===============================================================================================
// function : AddOption
// purpose :
//===============================================================================================
ViewerTest_CommandOptionKey
ViewerTest_CmdParser::AddOption(const std::string &theOptionNames,
const std::string &theOptionDescription) {
ViewerTest_CommandOptionKey ViewerTest_CmdParser::AddOption (const std::string& theOptionNames,
const std::string& theOptionDescription)
{
CommandOption aNewOption;
// extract option names
std::vector<std::string> aNames;
std::stringstream aStream(theOptionNames);
std::string anItem;
while (std::getline(aStream, anItem, '|')) {
if (!anItem.empty()) {
aNames.push_back(anItem);
std::stringstream aStream (theOptionNames);
std::string anItem;
while (std::getline (aStream, anItem, '|'))
{
if (!anItem.empty())
{
aNames.push_back (anItem);
}
}
aNewOption.Name = aNames.front();
if (aNames.size() > 1) {
if (aNames.size() > 1)
{
const std::size_t aNumberOfAliases = aNames.size() - 1;
aNewOption.Aliases.reserve(aNumberOfAliases);
std::copy(aNames.begin() + 1, aNames.end(),
std::back_inserter(aNewOption.Aliases));
aNewOption.Aliases.reserve (aNumberOfAliases);
std::copy (aNames.begin() + 1, aNames.end(), std::back_inserter (aNewOption.Aliases));
}
aNewOption.Description = theOptionDescription;
const ViewerTest_CommandOptionKey aNewOptionKey = myOptionStorage.size();
myOptionStorage.push_back(aNewOption);
myOptionStorage.push_back (aNewOption);
std::vector<std::string>::const_iterator anIt = aNames.begin();
for (; anIt != aNames.end(); ++anIt) {
const std::string aNameInLowerCase = toLowerCase(*anIt);
for (; anIt != aNames.end(); ++anIt)
{
const std::string aNameInLowerCase = toLowerCase (*anIt);
myOptionMap[aNameInLowerCase] = aNewOptionKey;
}
@@ -113,18 +113,21 @@ ViewerTest_CmdParser::AddOption(const std::string &theOptionNames,
// function : PrintHelp
// purpose :
//===============================================================================================
void ViewerTest_CmdParser::PrintHelp() const {
void ViewerTest_CmdParser::PrintHelp() const
{
std::cout << myDescription << std::endl;
std::vector<CommandOption>::const_iterator anIt = myOptionStorage.begin();
for (++anIt; anIt != myOptionStorage.end(); ++anIt) {
const CommandOption &aCommandOption = *anIt;
for (++anIt; anIt != myOptionStorage.end(); ++anIt)
{
const CommandOption& aCommandOption = *anIt;
std::cout << "\n\t-" << aCommandOption.Name;
const OptionAliases &anAliases = aCommandOption.Aliases;
if (!anAliases.empty()) {
const OptionAliases& anAliases = aCommandOption.Aliases;
if (!anAliases.empty())
{
std::cout << " (-" << anAliases.front();
for (OptionAliases::const_iterator anAliasIterator =
anAliases.begin() + 1;
anAliasIterator != anAliases.end(); ++anAliasIterator) {
for (OptionAliases::const_iterator anAliasIterator = anAliases.begin() + 1; anAliasIterator != anAliases.end();
++anAliasIterator)
{
std::cout << ", -" << *anAliasIterator;
}
std::cout << ")";
@@ -138,28 +141,34 @@ void ViewerTest_CmdParser::PrintHelp() const {
// function : Parse
// purpose :
//===============================================================================================
void ViewerTest_CmdParser::Parse(const Standard_Integer theArgsNb,
const char *const *const theArgVec) {
void ViewerTest_CmdParser::Parse (const Standard_Integer theArgsNb, const char* const* const theArgVec)
{
std::size_t aCurrentUsedOptionIndex = 0;
for (Standard_Integer anIter = 1; anIter < theArgsNb; ++anIter) {
const char *const anArgument = theArgVec[anIter];
if (anArgument[0] == '-' && !std::isdigit(anArgument[1])) {
const std::string anOptionName = toLowerCase(anArgument + 1);
OptionMap::iterator aMapIter = myOptionMap.find(anOptionName);
if (aMapIter != myOptionMap.end()) {
const ViewerTest_CommandOptionKey aCurrentUsedOptionKey =
aMapIter->second;
aCurrentUsedOptionIndex = addUsedOption(aCurrentUsedOptionKey);
} else {
Message::SendFail()
<< "Error: unknown argument '" << anOptionName << "'";
for (Standard_Integer anIter = 1; anIter < theArgsNb; ++anIter)
{
const char* const anArgument = theArgVec[anIter];
if (anArgument[0] == '-' && !std::isdigit (anArgument[1]))
{
const std::string anOptionName = toLowerCase (anArgument + 1);
OptionMap::iterator aMapIter = myOptionMap.find (anOptionName);
if (aMapIter != myOptionMap.end())
{
const ViewerTest_CommandOptionKey aCurrentUsedOptionKey = aMapIter->second;
aCurrentUsedOptionIndex = addUsedOption (aCurrentUsedOptionKey);
}
else
{
Message::SendFail() << "Error: unknown argument '" << anOptionName << "'";
return;
}
} else {
if (anIter == 1) {
aCurrentUsedOptionIndex = addUsedOption(THE_UNNAMED_COMMAND_OPTION_KEY);
}
else
{
if (anIter == 1)
{
aCurrentUsedOptionIndex = addUsedOption (THE_UNNAMED_COMMAND_OPTION_KEY);
}
myOptionArgumentStorage[aCurrentUsedOptionIndex].push_back(anArgument);
myOptionArgumentStorage[aCurrentUsedOptionIndex].push_back (anArgument);
}
}
}
@@ -168,9 +177,10 @@ void ViewerTest_CmdParser::Parse(const Standard_Integer theArgsNb,
// function : GetOptionNameByKey
// purpose :
//===============================================================================================
std::string ViewerTest_CmdParser::GetOptionNameByKey(
const ViewerTest_CommandOptionKey theOptionKey) const {
if (theOptionKey == THE_UNNAMED_COMMAND_OPTION_KEY) {
std::string ViewerTest_CmdParser::GetOptionNameByKey (const ViewerTest_CommandOptionKey theOptionKey) const
{
if (theOptionKey == THE_UNNAMED_COMMAND_OPTION_KEY)
{
return "Unnamed";
}
return myOptionStorage[theOptionKey].Name;
@@ -180,13 +190,14 @@ std::string ViewerTest_CmdParser::GetOptionNameByKey(
// function : GetUsedOptions
// purpose :
//===============================================================================================
ViewerTest_CommandOptionKeySet ViewerTest_CmdParser::GetUsedOptions() const {
ViewerTest_CommandOptionKeySet ViewerTest_CmdParser::GetUsedOptions() const
{
ViewerTest_CommandOptionKeySet aUsedOptions;
for (UsedOptionMap::const_iterator aUsedOptionMapIterator =
myUsedOptionMap.begin();
for (UsedOptionMap::const_iterator aUsedOptionMapIterator = myUsedOptionMap.begin();
aUsedOptionMapIterator != myUsedOptionMap.end();
++aUsedOptionMapIterator) {
aUsedOptions.insert(aUsedOptionMapIterator->first);
++aUsedOptionMapIterator)
{
aUsedOptions.insert (aUsedOptionMapIterator->first);
}
return aUsedOptions;
}
@@ -195,7 +206,8 @@ ViewerTest_CommandOptionKeySet ViewerTest_CmdParser::GetUsedOptions() const {
// function : HasNoOption
// purpose :
//===============================================================================================
bool ViewerTest_CmdParser::HasNoOption() const {
bool ViewerTest_CmdParser::HasNoOption() const
{
return myUsedOptionMap.empty();
}
@@ -203,16 +215,17 @@ bool ViewerTest_CmdParser::HasNoOption() const {
// function : HasUnnamedOption
// purpose :
//===============================================================================================
bool ViewerTest_CmdParser::HasUnnamedOption() const {
return myUsedOptionMap.find(THE_UNNAMED_COMMAND_OPTION_KEY) !=
myUsedOptionMap.end();
bool ViewerTest_CmdParser::HasUnnamedOption() const
{
return myUsedOptionMap.find (THE_UNNAMED_COMMAND_OPTION_KEY) != myUsedOptionMap.end();
}
//===============================================================================================
// function : HasNoUnnamedOption
// purpose :
//===============================================================================================
bool ViewerTest_CmdParser::HasOnlyUnnamedOption() const {
bool ViewerTest_CmdParser::HasOnlyUnnamedOption() const
{
return HasUnnamedOption() && (myUsedOptionMap.size() == 1);
}
@@ -220,37 +233,37 @@ bool ViewerTest_CmdParser::HasOnlyUnnamedOption() const {
// function : HasOption
// purpose :
//===============================================================================================
bool ViewerTest_CmdParser::HasOption(
const std::string &theOptionName,
const std::size_t theMandatoryArgsNb /* = 0 */,
const bool isFatal /* = false */) const {
bool ViewerTest_CmdParser::HasOption (const std::string& theOptionName,
const std::size_t theMandatoryArgsNb /* = 0 */,
const bool isFatal /* = false */) const
{
ViewerTest_CommandOptionKey anOptionKey;
if (!findOptionKey(theOptionName, anOptionKey)) {
if (!findOptionKey (theOptionName, anOptionKey))
{
return false;
}
return HasOption(anOptionKey, theMandatoryArgsNb, isFatal);
return HasOption (anOptionKey, theMandatoryArgsNb, isFatal);
}
//===============================================================================================
// function : HasOption
// purpose :
//===============================================================================================
bool ViewerTest_CmdParser::HasOption(
const ViewerTest_CommandOptionKey theOptionKey,
const std::size_t theMandatoryArgsNb /* = 0 */,
const bool isFatal /* = false */) const {
bool ViewerTest_CmdParser::HasOption (const ViewerTest_CommandOptionKey theOptionKey,
const std::size_t theMandatoryArgsNb /* = 0 */,
const bool isFatal /* = false */) const
{
std::size_t aUsedOptionIndex = 0;
if (!findUsedOptionIndex(theOptionKey, aUsedOptionIndex)) {
if (!findUsedOptionIndex (theOptionKey, aUsedOptionIndex))
{
return false;
}
const OptionArguments &anOptionArguments =
myOptionArgumentStorage[aUsedOptionIndex];
const bool aResult = (anOptionArguments.size() >= theMandatoryArgsNb);
if (isFatal && !aResult) {
Message::SendFail() << "Error: wrong syntax at option '"
<< myOptionStorage[theOptionKey].Name << "'\n"
<< "At least " << theMandatoryArgsNb
<< "expected, but only " << anOptionArguments.size()
const OptionArguments& anOptionArguments = myOptionArgumentStorage[aUsedOptionIndex];
const bool aResult = (anOptionArguments.size() >= theMandatoryArgsNb);
if (isFatal && !aResult)
{
Message::SendFail() << "Error: wrong syntax at option '" << myOptionStorage[theOptionKey].Name << "'\n"
<< "At least " << theMandatoryArgsNb << "expected, but only " << anOptionArguments.size()
<< "provided.";
}
return aResult;
@@ -260,63 +273,68 @@ bool ViewerTest_CmdParser::HasOption(
// function : GetNumberOfOptionArguments
// purpose :
//===============================================================================================
Standard_Integer ViewerTest_CmdParser::GetNumberOfOptionArguments(
const std::string &theOptionName) const {
Standard_Integer ViewerTest_CmdParser::GetNumberOfOptionArguments (const std::string& theOptionName) const
{
ViewerTest_CommandOptionKey anOptionKey = THE_UNNAMED_COMMAND_OPTION_KEY;
if (!findOptionKey(theOptionName, anOptionKey)) {
if (!findOptionKey (theOptionName, anOptionKey))
{
return 0;
}
return GetNumberOfOptionArguments(anOptionKey);
return GetNumberOfOptionArguments (anOptionKey);
}
//===============================================================================================
// function : GetNumberOfOptionArguments
// purpose :
//===============================================================================================
Standard_Integer ViewerTest_CmdParser::GetNumberOfOptionArguments(
const ViewerTest_CommandOptionKey theOptionKey) const {
Standard_Integer ViewerTest_CmdParser::GetNumberOfOptionArguments (const ViewerTest_CommandOptionKey theOptionKey) const
{
std::size_t aUsedOptionIndex = 0;
if (!findUsedOptionIndex(theOptionKey, aUsedOptionIndex)) {
if (!findUsedOptionIndex (theOptionKey, aUsedOptionIndex))
{
return false;
}
return static_cast<Standard_Integer>(
myOptionArgumentStorage[aUsedOptionIndex].size());
return static_cast<Standard_Integer> (myOptionArgumentStorage[aUsedOptionIndex].size());
}
//===============================================================================================
// function : Arg
// purpose :
//===============================================================================================
bool ViewerTest_CmdParser::Arg(const std::string &theOptionName,
const Standard_Integer theArgumentIndex,
std::string &theOptionArgument) const {
Standard_ASSERT_RETURN(
theArgumentIndex >= 0,
"'theArgumentIndex' must be greater than or equal to zero.", false);
bool ViewerTest_CmdParser::Arg (const std::string& theOptionName,
const Standard_Integer theArgumentIndex,
std::string& theOptionArgument) const
{
Standard_ASSERT_RETURN (theArgumentIndex >= 0,
"'theArgumentIndex' must be greater than or equal to zero.",
false);
ViewerTest_CommandOptionKey anOptionKey = THE_UNNAMED_COMMAND_OPTION_KEY;
if (!theOptionName.empty() && !findOptionKey(theOptionName, anOptionKey)) {
if (!theOptionName.empty() && !findOptionKey (theOptionName, anOptionKey))
{
return false;
}
return Arg(anOptionKey, theArgumentIndex, theOptionArgument);
return Arg (anOptionKey, theArgumentIndex, theOptionArgument);
}
//===============================================================================================
// function : Arg
// purpose :
//===============================================================================================
bool ViewerTest_CmdParser::Arg(const ViewerTest_CommandOptionKey theOptionKey,
const Standard_Integer theArgumentIndex,
std::string &theOptionArgument) const {
Standard_ASSERT_RETURN(
theArgumentIndex >= 0,
"'theArgumentIndex' must be greater than or equal to zero.", false);
bool ViewerTest_CmdParser::Arg (const ViewerTest_CommandOptionKey theOptionKey,
const Standard_Integer theArgumentIndex,
std::string& theOptionArgument) const
{
Standard_ASSERT_RETURN (theArgumentIndex >= 0,
"'theArgumentIndex' must be greater than or equal to zero.",
false);
std::size_t aUsedOptionIndex = 0;
if (!findUsedOptionIndex(theOptionKey, aUsedOptionIndex)) {
if (!findUsedOptionIndex (theOptionKey, aUsedOptionIndex))
{
return false;
}
const OptionArguments &anOptionArguments =
myOptionArgumentStorage[aUsedOptionIndex];
if (static_cast<std::size_t>(theArgumentIndex) >= anOptionArguments.size()) {
const OptionArguments& anOptionArguments = myOptionArgumentStorage[aUsedOptionIndex];
if (static_cast<std::size_t> (theArgumentIndex) >= anOptionArguments.size())
{
return false;
}
theOptionArgument = anOptionArguments[theArgumentIndex];
@@ -327,15 +345,14 @@ bool ViewerTest_CmdParser::Arg(const ViewerTest_CommandOptionKey theOptionKey,
// function : Arg
// purpose :
//===============================================================================================
std::string
ViewerTest_CmdParser::Arg(const std::string &theOptionName,
const Standard_Integer theArgumentIndex) const {
Standard_ASSERT_RETURN(
theArgumentIndex >= 0,
"'theArgumentIndex' must be greater than or equal to zero.",
std::string());
std::string ViewerTest_CmdParser::Arg (const std::string& theOptionName, const Standard_Integer theArgumentIndex) const
{
Standard_ASSERT_RETURN (theArgumentIndex >= 0,
"'theArgumentIndex' must be greater than or equal to zero.",
std::string());
std::string anOptionArgument;
if (!Arg(theOptionName, theArgumentIndex, anOptionArgument)) {
if (!Arg (theOptionName, theArgumentIndex, anOptionArgument))
{
return std::string();
}
return anOptionArgument;
@@ -345,11 +362,12 @@ ViewerTest_CmdParser::Arg(const std::string &theOptionName,
// function : Arg
// purpose :
//===============================================================================================
std::string
ViewerTest_CmdParser::Arg(const ViewerTest_CommandOptionKey theOptionKey,
const Standard_Integer theArgumentIndex) const {
std::string ViewerTest_CmdParser::Arg (const ViewerTest_CommandOptionKey theOptionKey,
const Standard_Integer theArgumentIndex) const
{
std::string anOptionArgument;
if (!Arg(theOptionKey, theArgumentIndex, anOptionArgument)) {
if (!Arg (theOptionKey, theArgumentIndex, anOptionArgument))
{
return std::string();
}
return anOptionArgument;
@@ -359,92 +377,86 @@ ViewerTest_CmdParser::Arg(const ViewerTest_CommandOptionKey theOptionKey,
// function : ArgVec3f
// purpose :
//===============================================================================================
Graphic3d_Vec3
ViewerTest_CmdParser::ArgVec3f(const std::string &theOptionName,
Standard_Integer theArgumentIndex) const {
return Graphic3d_Vec3(static_cast<Standard_ShortReal>(Draw::Atof(
Arg(theOptionName, theArgumentIndex).c_str())),
static_cast<Standard_ShortReal>(Draw::Atof(
Arg(theOptionName, theArgumentIndex + 1).c_str())),
static_cast<Standard_ShortReal>(Draw::Atof(
Arg(theOptionName, theArgumentIndex + 2).c_str())));
Graphic3d_Vec3 ViewerTest_CmdParser::ArgVec3f (const std::string& theOptionName,
Standard_Integer theArgumentIndex) const
{
return Graphic3d_Vec3 (
static_cast<Standard_ShortReal> (Draw::Atof (Arg (theOptionName, theArgumentIndex).c_str())),
static_cast<Standard_ShortReal> (Draw::Atof (Arg (theOptionName, theArgumentIndex + 1).c_str())),
static_cast<Standard_ShortReal> (Draw::Atof (Arg (theOptionName, theArgumentIndex + 2).c_str())));
}
//===============================================================================================
// function : ArgVec3d
// purpose :
//===============================================================================================
Graphic3d_Vec3d
ViewerTest_CmdParser::ArgVec3d(const std::string &theOptionName,
Standard_Integer theArgumentIndex) const {
return Graphic3d_Vec3d(
Draw::Atof(Arg(theOptionName, theArgumentIndex).c_str()),
Draw::Atof(Arg(theOptionName, theArgumentIndex + 1).c_str()),
Draw::Atof(Arg(theOptionName, theArgumentIndex + 2).c_str()));
Graphic3d_Vec3d ViewerTest_CmdParser::ArgVec3d (const std::string& theOptionName,
Standard_Integer theArgumentIndex) const
{
return Graphic3d_Vec3d (Draw::Atof (Arg (theOptionName, theArgumentIndex).c_str()),
Draw::Atof (Arg (theOptionName, theArgumentIndex + 1).c_str()),
Draw::Atof (Arg (theOptionName, theArgumentIndex + 2).c_str()));
}
//===============================================================================================
// function : ArgVec
// purpose :
//===============================================================================================
gp_Vec ViewerTest_CmdParser::ArgVec(const std::string &theOptionName,
Standard_Integer theArgumentIndex) const {
return gp_Vec(Draw::Atof(Arg(theOptionName, theArgumentIndex).c_str()),
Draw::Atof(Arg(theOptionName, theArgumentIndex + 1).c_str()),
Draw::Atof(Arg(theOptionName, theArgumentIndex + 2).c_str()));
gp_Vec ViewerTest_CmdParser::ArgVec (const std::string& theOptionName, Standard_Integer theArgumentIndex) const
{
return gp_Vec (Draw::Atof (Arg (theOptionName, theArgumentIndex).c_str()),
Draw::Atof (Arg (theOptionName, theArgumentIndex + 1).c_str()),
Draw::Atof (Arg (theOptionName, theArgumentIndex + 2).c_str()));
}
//===============================================================================================
// function : ArgPnt
// purpose :
//===============================================================================================
gp_Pnt ViewerTest_CmdParser::ArgPnt(const std::string &theOptionName,
Standard_Integer theArgumentIndex) const {
return gp_Pnt(Draw::Atof(Arg(theOptionName, theArgumentIndex).c_str()),
Draw::Atof(Arg(theOptionName, theArgumentIndex + 1).c_str()),
Draw::Atof(Arg(theOptionName, theArgumentIndex + 2).c_str()));
gp_Pnt ViewerTest_CmdParser::ArgPnt (const std::string& theOptionName, Standard_Integer theArgumentIndex) const
{
return gp_Pnt (Draw::Atof (Arg (theOptionName, theArgumentIndex).c_str()),
Draw::Atof (Arg (theOptionName, theArgumentIndex + 1).c_str()),
Draw::Atof (Arg (theOptionName, theArgumentIndex + 2).c_str()));
}
//===============================================================================================
// function : ArgDouble
// purpose :
//===============================================================================================
Standard_Real
ViewerTest_CmdParser::ArgDouble(const std::string &theOptionName,
Standard_Integer theArgumentIndex) const {
return Draw::Atof(Arg(theOptionName, theArgumentIndex).c_str());
Standard_Real ViewerTest_CmdParser::ArgDouble (const std::string& theOptionName,
Standard_Integer theArgumentIndex) const
{
return Draw::Atof (Arg (theOptionName, theArgumentIndex).c_str());
}
//===============================================================================================
// function : ArgFloat
// purpose :
//===============================================================================================
Standard_ShortReal
ViewerTest_CmdParser::ArgFloat(const std::string &theOptionName,
Standard_Integer theArgumentIndex) const {
return static_cast<Standard_ShortReal>(
Draw::Atof(Arg(theOptionName, theArgumentIndex).c_str()));
Standard_ShortReal ViewerTest_CmdParser::ArgFloat (const std::string& theOptionName,
Standard_Integer theArgumentIndex) const
{
return static_cast<Standard_ShortReal> (Draw::Atof (Arg (theOptionName, theArgumentIndex).c_str()));
}
//===============================================================================================
// function : ArgInt
// purpose :
//===============================================================================================
Standard_Integer
ViewerTest_CmdParser::ArgInt(const std::string &theOptionName,
const Standard_Integer theArgumentIndex) const {
return static_cast<Standard_Integer>(
Draw::Atoi(Arg(theOptionName, theArgumentIndex).c_str()));
Standard_Integer ViewerTest_CmdParser::ArgInt (const std::string& theOptionName,
const Standard_Integer theArgumentIndex) const
{
return static_cast<Standard_Integer> (Draw::Atoi (Arg (theOptionName, theArgumentIndex).c_str()));
}
//===============================================================================================
// function : ArgBool
// purpose :
//===============================================================================================
bool ViewerTest_CmdParser::ArgBool(
const std::string &theOptionName,
const Standard_Integer theArgumentIndex) const {
return Draw::Atoi(Arg(theOptionName, theArgumentIndex).c_str()) != 0;
bool ViewerTest_CmdParser::ArgBool (const std::string& theOptionName, const Standard_Integer theArgumentIndex) const
{
return Draw::Atoi (Arg (theOptionName, theArgumentIndex).c_str()) != 0;
}
//===============================================================================================
@@ -452,55 +464,54 @@ bool ViewerTest_CmdParser::ArgBool(
// purpose :
//===============================================================================================
template <typename TheColor>
bool ViewerTest_CmdParser::ArgColor(const std::string &theOptionName,
Standard_Integer &theArgumentIndex,
TheColor &theColor) const {
bool ViewerTest_CmdParser::ArgColor (const std::string& theOptionName,
Standard_Integer& theArgumentIndex,
TheColor& theColor) const
{
ViewerTest_CommandOptionKey anOptionKey;
if (!findOptionKey(theOptionName, anOptionKey)) {
if (!findOptionKey (theOptionName, anOptionKey))
{
return false;
}
return ArgColor(anOptionKey, theArgumentIndex, theColor);
return ArgColor (anOptionKey, theArgumentIndex, theColor);
}
//! ViewerTest_CmdParser::ArgColor() explicit template instantiation definitions
template bool ViewerTest_CmdParser::ArgColor(const std::string &theOptionName,
Standard_Integer &theArgumentIndex,
Quantity_Color &theColor) const;
template bool ViewerTest_CmdParser::ArgColor (const std::string& theOptionName,
Standard_Integer& theArgumentIndex,
Quantity_Color& theColor) const;
template bool
ViewerTest_CmdParser::ArgColor(const std::string &theOptionName,
Standard_Integer &theArgumentIndex,
Quantity_ColorRGBA &theColor) const;
template bool ViewerTest_CmdParser::ArgColor (const std::string& theOptionName,
Standard_Integer& theArgumentIndex,
Quantity_ColorRGBA& theColor) const;
//===============================================================================================
// function : ArgColor
// purpose :
//===============================================================================================
template <typename TheColor>
bool ViewerTest_CmdParser::ArgColor(
const ViewerTest_CommandOptionKey theOptionKey,
Standard_Integer &theArgumentIndex, TheColor &theColor) const {
bool ViewerTest_CmdParser::ArgColor (const ViewerTest_CommandOptionKey theOptionKey,
Standard_Integer& theArgumentIndex,
TheColor& theColor) const
{
std::size_t aUsedOptionIndex = 0;
if (!findUsedOptionIndex(theOptionKey, aUsedOptionIndex)) {
if (!findUsedOptionIndex (theOptionKey, aUsedOptionIndex))
{
return false;
}
const RawStringArguments aRawStringArguments =
getRawStringArguments(aUsedOptionIndex);
const Standard_Integer aNumberOfArguments =
static_cast<Standard_Integer>(aRawStringArguments.size());
Standard_ASSERT_RETURN(
theArgumentIndex < aNumberOfArguments,
"'theArgumentIndex' must be less than the number of command-line "
"arguments "
"passed with the option which access key is 'theOptionKey'.",
false);
const Standard_Integer aNumberOfAvailableArguments =
aNumberOfArguments - theArgumentIndex;
TheColor aColor;
const Standard_Integer aNumberOfParsedArguments =
Draw::ParseColor(aNumberOfAvailableArguments,
&aRawStringArguments[theArgumentIndex], aColor);
if (aNumberOfParsedArguments == 0) {
const RawStringArguments aRawStringArguments = getRawStringArguments (aUsedOptionIndex);
const Standard_Integer aNumberOfArguments = static_cast<Standard_Integer> (aRawStringArguments.size());
Standard_ASSERT_RETURN (theArgumentIndex < aNumberOfArguments,
"'theArgumentIndex' must be less than the number of command-line arguments "
"passed with the option which access key is 'theOptionKey'.",
false);
const Standard_Integer aNumberOfAvailableArguments = aNumberOfArguments - theArgumentIndex;
TheColor aColor;
const Standard_Integer aNumberOfParsedArguments = Draw::ParseColor (aNumberOfAvailableArguments,
&aRawStringArguments[theArgumentIndex],
aColor);
if (aNumberOfParsedArguments == 0)
{
return false;
}
theArgumentIndex += aNumberOfParsedArguments;
@@ -509,27 +520,25 @@ bool ViewerTest_CmdParser::ArgColor(
}
//! ViewerTest_CmdParser::ArgColor() explicit template instantiation definitions
template bool
ViewerTest_CmdParser::ArgColor(ViewerTest_CommandOptionKey theOptionKey,
Standard_Integer &theArgumentIndex,
Quantity_Color &theColor) const;
template bool ViewerTest_CmdParser::ArgColor (ViewerTest_CommandOptionKey theOptionKey,
Standard_Integer& theArgumentIndex,
Quantity_Color& theColor) const;
template bool
ViewerTest_CmdParser::ArgColor(ViewerTest_CommandOptionKey theOptionKey,
Standard_Integer &theArgumentIndex,
Quantity_ColorRGBA &theColor) const;
template bool ViewerTest_CmdParser::ArgColor (ViewerTest_CommandOptionKey theOptionKey,
Standard_Integer& theArgumentIndex,
Quantity_ColorRGBA& theColor) const;
//===============================================================================================
// function : findUsedOptionKey
// purpose :
//===============================================================================================
bool ViewerTest_CmdParser::findOptionKey(
const std::string &theOptionName,
ViewerTest_CommandOptionKey &theOptionKey) const {
const std::string anOptionNameInLowercase = toLowerCase(theOptionName);
const OptionMap::const_iterator aMapIter =
myOptionMap.find(anOptionNameInLowercase);
if (aMapIter == myOptionMap.end()) {
bool ViewerTest_CmdParser::findOptionKey (const std::string& theOptionName,
ViewerTest_CommandOptionKey& theOptionKey) const
{
const std::string anOptionNameInLowercase = toLowerCase (theOptionName);
const OptionMap::const_iterator aMapIter = myOptionMap.find (anOptionNameInLowercase);
if (aMapIter == myOptionMap.end())
{
return false;
}
theOptionKey = aMapIter->second;
@@ -540,12 +549,12 @@ bool ViewerTest_CmdParser::findOptionKey(
// function : findUsedOptionKey
// purpose :
//===============================================================================================
bool ViewerTest_CmdParser::findUsedOptionIndex(
const ViewerTest_CommandOptionKey theOptionKey,
std::size_t &theUsedOptionIndex) const {
const UsedOptionMap::const_iterator aUsedOptionIterator =
myUsedOptionMap.find(theOptionKey);
if (aUsedOptionIterator == myUsedOptionMap.end()) {
bool ViewerTest_CmdParser::findUsedOptionIndex (const ViewerTest_CommandOptionKey theOptionKey,
std::size_t& theUsedOptionIndex) const
{
const UsedOptionMap::const_iterator aUsedOptionIterator = myUsedOptionMap.find (theOptionKey);
if (aUsedOptionIterator == myUsedOptionMap.end())
{
return false;
}
theUsedOptionIndex = aUsedOptionIterator->second;
@@ -556,14 +565,16 @@ bool ViewerTest_CmdParser::findUsedOptionIndex(
// function : findUsedOptionIndex
// purpose :
//===============================================================================================
bool ViewerTest_CmdParser::findUsedOptionIndex(
const std::string &theOptionName, std::size_t &theUsedOptionIndex) const {
bool ViewerTest_CmdParser::findUsedOptionIndex (const std::string& theOptionName, std::size_t& theUsedOptionIndex) const
{
ViewerTest_CommandOptionKey anOptionKey = THE_UNNAMED_COMMAND_OPTION_KEY;
if (!findOptionKey(theOptionName, anOptionKey)) {
if (!findOptionKey (theOptionName, anOptionKey))
{
return false;
}
std::size_t aUsedOptionIndex = 0;
if (!findUsedOptionIndex(anOptionKey, aUsedOptionIndex)) {
if (!findUsedOptionIndex (anOptionKey, aUsedOptionIndex))
{
return false;
}
theUsedOptionIndex = aUsedOptionIndex;
@@ -574,10 +585,10 @@ bool ViewerTest_CmdParser::findUsedOptionIndex(
// function : addUsedOption
// purpose :
//===============================================================================================
std::size_t ViewerTest_CmdParser::addUsedOption(
const ViewerTest_CommandOptionKey theNewUsedOptionKey) {
std::size_t ViewerTest_CmdParser::addUsedOption (const ViewerTest_CommandOptionKey theNewUsedOptionKey)
{
const std::size_t aNewUsedOptionIndex = myOptionArgumentStorage.size();
myOptionArgumentStorage.push_back(OptionArguments());
myOptionArgumentStorage.push_back (OptionArguments());
myUsedOptionMap[theNewUsedOptionKey] = aNewUsedOptionIndex;
return aNewUsedOptionIndex;
}
@@ -586,14 +597,13 @@ std::size_t ViewerTest_CmdParser::addUsedOption(
// function : getRawStringArguments
// purpose :
//===============================================================================================
ViewerTest_CmdParser::RawStringArguments
ViewerTest_CmdParser::getRawStringArguments(
const std::size_t theUsedOptionIndex) const {
Standard_ASSERT_RETURN(theUsedOptionIndex < myOptionArgumentStorage.size(),
"'theUsedOptionIndex' must be less than the size of "
"'myOptionArgumentStorage'.",
RawStringArguments());
const OptionArguments &anOptionArguments =
myOptionArgumentStorage[theUsedOptionIndex];
return convertToRawStringList(anOptionArguments);
ViewerTest_CmdParser::RawStringArguments ViewerTest_CmdParser::getRawStringArguments (
const std::size_t theUsedOptionIndex) const
{
Standard_ASSERT_RETURN (
theUsedOptionIndex < myOptionArgumentStorage.size(),
"'theUsedOptionIndex' must be less than the size of 'myOptionArgumentStorage'.",
RawStringArguments());
const OptionArguments& anOptionArguments = myOptionArgumentStorage[theUsedOptionIndex];
return convertToRawStringList (anOptionArguments);
}

View File

@@ -1,5 +1,5 @@
@echo off
rem test1
rem Helper script to run procedure of automatic upgrade of application code
rem on newer version of OCCT on Windows.
rem Running it requires that Tcl should be in the PATH