Commit a18e2dbe authored by Ben Boeckel's avatar Ben Boeckel Committed by Kitware Robot

Merge topic 'update-visit-20190320'

c4de3dba Merge branch 'upstream-visit-databases' into update-visit-20190320
c97c8764 visit-databases 2019-03-20 (6cdae7fd)
186d982d Merge branch 'upstream-visit' into update-visit-20190320
a2c2cf8f visit 2019-03-20 (6cdae7fd)
a892c812 visit: update to r34006
Acked-by: Kitware Robot's avatarKitware Robot <kwrobot@kitware.com>
Merge-request: !60
parents 7b79366e c4de3dba

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

/*****************************************************************************
*
* Copyright (c) 2000 - 2017, Lawrence Livermore National Security, LLC
* Copyright (c) 2000 - 2018, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
......
Copyright (c) 2000 - 2017
Copyright (c) 2000 - 2018
Lawrence Livermore National Security, LLC.
Produced at the Lawrence Livermore National Laboratory
LLNL-CODE-442911
......
#*****************************************************************************
#
# Copyright (c) 2000 - 2017, Lawrence Livermore National Security, LLC
# Copyright (c) 2000 - 2018, Lawrence Livermore National Security, LLC
# Produced at the Lawrence Livermore National Laboratory
# LLNL-CODE-442911
# All rights reserved.
......
#*****************************************************************************
#
# Copyright (c) 2000 - 2017, Lawrence Livermore National Security, LLC
# Copyright (c) 2000 - 2018, Lawrence Livermore National Security, LLC
# Produced at the Lawrence Livermore National Laboratory
# LLNL-CODE-442911
# All rights reserved.
......
/*****************************************************************************
*
* Copyright (c) 2000 - 2017, Lawrence Livermore National Security, LLC
* Copyright (c) 2000 - 2018, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
......
/*****************************************************************************
*
* Copyright (c) 2000 - 2017, Lawrence Livermore National Security, LLC
* Copyright (c) 2000 - 2018, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
......
/*****************************************************************************
*
* Copyright (c) 2000 - 2017, Lawrence Livermore National Security, LLC
* Copyright (c) 2000 - 2018, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
......
/*****************************************************************************
*
* Copyright (c) 2000 - 2017, Lawrence Livermore National Security, LLC
* Copyright (c) 2000 - 2018, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
......
/*****************************************************************************
*
* Copyright (c) 2000 - 2017, Lawrence Livermore National Security, LLC
* Copyright (c) 2000 - 2018, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
......
/*****************************************************************************
*
* Copyright (c) 2000 - 2017, Lawrence Livermore National Security, LLC
* Copyright (c) 2000 - 2018, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
......
/*****************************************************************************
*
* Copyright (c) 2000 - 2017, Lawrence Livermore National Security, LLC
* Copyright (c) 2000 - 2018, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
......@@ -5938,7 +5938,7 @@ avtDatabaseMetaData::DetermineVarType(std::string var_in, bool do_expr) const
if (do_expr)
{
ParsingExprList *pel = ParsingExprList::Instance();
Expression *e = pel->GetExpression(var_in);
Expression const *e = pel->GetExpression(var_in);
if (e != NULL)
return ExprType_To_avtVarType(e->GetType());
}
......@@ -7049,7 +7049,7 @@ bool avtDatabaseMetaData::haveWarningCallback = false;
// ****************************************************************************
void
avtDatabaseMetaData::IssueWarning(const char *msg)
avtDatabaseMetaData::IssueWarning(const char *msg) const
{
if (haveWarningCallback)
{
......@@ -7474,3 +7474,71 @@ avtDatabaseMetaData::AddGhostZoneTypePresent(std::string name,
}
}
// ****************************************************************************
// Method: avtDatabaseMetaData::GetTotalVarCount
//
// Purpose: Compute the total number of variables this database has
//
// Programmer: Mark C. Miller, Thu May 25 19:52:38 PDT 2017
//
// ****************************************************************************
int
avtDatabaseMetaData::GetTotalVarCount(void) const
{
return GetNumMeshes() +
GetNumSubsets() +
GetNumScalars() +
GetNumVectors() +
GetNumTensors() +
GetNumSymmTensors() +
GetNumArrays() +
GetNumMaterials() +
GetNumSpecies() +
GetNumCurves() +
GetNumLabels() +
GetNumberOfExpressions();
}
char const *
avtDatabaseMetaData::GetSEGEnvVarName() const
{
return "VISIT_FORCE_SPECULATIVE_EXPRESSION_GENERATION";
}
char const *
avtDatabaseMetaData::GetSEGWarningString() const
{
static char msg[2048];
SNPRINTF(msg, sizeof(msg),
"Due to the large number of variables, %d, in this database, VisIt has\n"
"automatically disabled speculative expression generation of ALL forms\n"
"(e.g. vector-magnitude, mesh-quality, time-derivative, operator-created)\n"
"because the large number of expressions bogs down GUI performance.\n"
"You may override this behavior by exiting VisIt and restarting with the\n"
"environment variable...\n"
" \"%s\"\n"
"set. Be aware that doing so will likely result in sluggish GUI performance.\n"
"If you need one or more of the expressions VisIt's speculative expression\n"
"generation process provides and are unwilling or unable to manually create\n"
"the expression(s) you need, you have no choice in this version of VisIt\n"
"except to override this behavior and suffer any GUI performance issues.\n"
"Unfortunately, if you are running in client-server mode, you will have to\n"
"take action to set this enviornment variable on both the server and client\n"
"machines. This will only be necessary in VisIt version 2.12.3. An entirely\n"
"different mechanism for controlling this behavior will be introduced in 2.13.",
GetTotalVarCount(), GetSEGEnvVarName());
return msg;
}
void
avtDatabaseMetaData::IssueSEGWarningMessage() const
{
IssueWarning(GetSEGWarningString());
}
bool
avtDatabaseMetaData::ShouldDisableSEG(bool envOverride) const
{
return GetTotalVarCount() > 1000 && !envOverride;
}
/*****************************************************************************
*
* Copyright (c) 2000 - 2017, Lawrence Livermore National Security, LLC
* Copyright (c) 2000 - 2018, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
......@@ -394,7 +394,7 @@ public:
void RegisterWarningCallback(void (*)(const char *));
static void (*WarningCallback)(const char *);
static bool haveWarningCallback;
void IssueWarning(const char *msg);
void IssueWarning(const char *msg) const;
bool VarIsCompound(const std::string &inVar) const;
void ParseCompoundForVar(const std::string &inVar, std::string &outVar) const;
void ParseCompoundForMesh(const std::string &inVar, std::string &meshName) const;
......@@ -410,6 +410,11 @@ public:
int GetGhostZoneTypesPresent(std::string name) const;
void ClearGhostTypesPresent(std::string name);
void AddGhostZoneTypePresent(std::string name, avtGhostsZonesPresent v);
int GetTotalVarCount(void) const;
char const * GetSEGEnvVarName() const;
char const * GetSEGWarningString() const;
void IssueSEGWarningMessage() const;
bool ShouldDisableSEG(bool envOverride=false) const;
// IDs that can be used to identify fields in case statements
enum {
......