Commit 3d0bb3ad authored by pugmire's avatar pugmire

Add PeaksOverThreshold operator.

git-svn-id: http://visit.ilight.com/svn/visit/trunk/src@18304 18c085ea-50e0-402c-830e-de6fd14e8384
parent 9fd6f0c3
......@@ -167,6 +167,7 @@ class PIPELINE_API avtDataset : public avtDataObject
friend class avtResampleExpression;
#ifdef HAVE_LIB_R
friend class avtExtremeValueAnalysisFilter;
friend class avtPeaksOverThresholdFilter;
#endif
public:
......
......@@ -149,6 +149,7 @@ ENDIF(VISIT_BUILD_ALL_PLUGINS)
IF(HAVE_LIB_R)
LIST(APPEND BUILD_PLUGINS ExtremeValueAnalysis)
LIST(APPEND BUILD_PLUGINS PeaksOverThreshold)
ENDIF(HAVE_LIB_R)
# Add the plugin directories
......
......@@ -6,13 +6,9 @@ CONFIGURE_FILE(gev.fit2.r
${CMAKE_BINARY_DIR}/lib/r_support/Rscripts/gev.fit2.r @ONLY)
CONFIGURE_FILE(gevVisit.r
${CMAKE_BINARY_DIR}/lib/r_support/Rscripts/gevVisit.r @ONLY)
CONFIGURE_FILE(potVisit.r
${CMAKE_BINARY_DIR}/lib/r_support/Rscripts/potVisit.r @ONLY)
CONFIGURE_FILE(pp.fit2.r
${CMAKE_BINARY_DIR}/lib/r_support/Rscripts/pp.fit2.r @ONLY)
#install all files..
MESSAGE(STATUS "Installing R scripts: ${VISIT_INSTALLED_VERSION_LIB} ")
INSTALL(FILES auxil.r gev.fit2.r gevVisit.r potVisit.r pp.fit2.r
INSTALL(FILES auxil.r gev.fit2.r gevVisit.r
DESTINATION ${VISIT_INSTALLED_VERSION_LIB}/r_support/Rscripts/
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ GROUP_WRITE WORLD_READ)
# DO NOT EDIT THIS FILE! THIS FILE IS AUTOMATICALLY GENERATED BY xml2cmake
PROJECT(PeaksOverThreshold)
INCLUDE(${VISIT_SOURCE_DIR}/CMake/PluginMacros.cmake)
SET(COMMON_SOURCES
PeaksOverThresholdPluginInfo.C
PeaksOverThresholdCommonPluginInfo.C
PeaksOverThresholdAttributes.C
)
SET(LIBI_SOURCES
PeaksOverThresholdPluginInfo.C
)
SET(LIBG_SOURCES
PeaksOverThresholdGUIPluginInfo.C
QvisPeaksOverThresholdWindow.C
${COMMON_SOURCES}
)
SET(LIBG_MOC_SOURCES
QvisPeaksOverThresholdWindow.h
)
SET(LIBV_SOURCES
PeaksOverThresholdViewerPluginInfo.C
${COMMON_SOURCES}
)
SET(LIBE_SOURCES
PeaksOverThresholdEnginePluginInfo.C
avtPeaksOverThresholdFilter.C
avtRPOTFilter.C
${COMMON_SOURCES}
)
INCLUDE_DIRECTORIES(
${CMAKE_CURRENT_SOURCE_DIR}
${VISIT_COMMON_INCLUDES}
${VISIT_INCLUDE_DIR}/avt/DBAtts/MetaData
${VISIT_INCLUDE_DIR}/avt/DBAtts/SIL
${VISIT_INCLUDE_DIR}/avt/Database/Database
${VISIT_INCLUDE_DIR}/avt/Expressions/Abstract
${VISIT_INCLUDE_DIR}/avt/Expressions/CMFE
${VISIT_INCLUDE_DIR}/avt/Expressions/Conditional
${VISIT_INCLUDE_DIR}/avt/Expressions/Derivations
${VISIT_INCLUDE_DIR}/avt/Expressions/General
${VISIT_INCLUDE_DIR}/avt/Expressions/ImageProcessing
${VISIT_INCLUDE_DIR}/avt/Expressions/Management
${VISIT_INCLUDE_DIR}/avt/Expressions/Math
${VISIT_INCLUDE_DIR}/avt/Expressions/MeshQuality
${VISIT_INCLUDE_DIR}/avt/Expressions/TimeIterators
${VISIT_INCLUDE_DIR}/avt/FileWriter
${VISIT_INCLUDE_DIR}/avt/Filters
${VISIT_INCLUDE_DIR}/avt/IVP
${VISIT_INCLUDE_DIR}/avt/Math
${VISIT_INCLUDE_DIR}/avt/Pipeline/AbstractFilters
${VISIT_INCLUDE_DIR}/avt/Pipeline/Data
${VISIT_INCLUDE_DIR}/avt/Pipeline/Pipeline
${VISIT_INCLUDE_DIR}/avt/Pipeline/Sinks
${VISIT_INCLUDE_DIR}/avt/Pipeline/Sources
${VISIT_INCLUDE_DIR}/avt/Plotter
${VISIT_INCLUDE_DIR}/avt/QtVisWindow
${VISIT_INCLUDE_DIR}/avt/View
${VISIT_INCLUDE_DIR}/avt/VisWindow/Colleagues
${VISIT_INCLUDE_DIR}/avt/VisWindow/Interactors
${VISIT_INCLUDE_DIR}/avt/VisWindow/Proxies
${VISIT_INCLUDE_DIR}/avt/VisWindow/Tools
${VISIT_INCLUDE_DIR}/avt/VisWindow/VisWindow
${VISIT_INCLUDE_DIR}/gui
${VISIT_INCLUDE_DIR}/mdserver/proxy
${VISIT_INCLUDE_DIR}/mdserver/rpc
${VISIT_INCLUDE_DIR}/viewer/main
${VISIT_INCLUDE_DIR}/viewer/proxy
${VISIT_INCLUDE_DIR}/viewer/rpc
${VISIT_INCLUDE_DIR}/winutil
${VISIT_INCLUDE_DIR}/visit_vtk/full
${VISIT_INCLUDE_DIR}/visit_vtk/lightweight
${QT_INCLUDE_DIR}
${QT_QTCORE_INCLUDE_DIR}
${QT_QTGUI_INCLUDE_DIR}
${VTK_INCLUDE_DIRS}
${PYTHON_INCLUDE_PATH}
${VISIT_INCLUDE_DIR}/visitpy/visitpy
)
LINK_DIRECTORIES(${VISIT_LIBRARY_DIR} ${QT_LIBRARY_DIR} ${GLEW_LIBRARY_DIR} ${VTK_LIBRARY_DIRS} )
ADD_LIBRARY(IPeaksOverThresholdOperator ${LIBI_SOURCES})
TARGET_LINK_LIBRARIES(IPeaksOverThresholdOperator visitcommon)
SET(INSTALLTARGETS IPeaksOverThresholdOperator)
IF(NOT VISIT_SERVER_COMPONENTS_ONLY AND NOT VISIT_ENGINE_ONLY AND NOT VISIT_DBIO_ONLY)
QT_WRAP_CPP(GPeaksOverThresholdOperator LIBG_SOURCES ${LIBG_MOC_SOURCES})
ADD_LIBRARY(GPeaksOverThresholdOperator ${LIBG_SOURCES})
TARGET_LINK_LIBRARIES(GPeaksOverThresholdOperator visitcommon gui )
ADD_LIBRARY(VPeaksOverThresholdOperator ${LIBV_SOURCES})
TARGET_LINK_LIBRARIES(VPeaksOverThresholdOperator visitcommon viewer )
SET(INSTALLTARGETS ${INSTALLTARGETS} GPeaksOverThresholdOperator VPeaksOverThresholdOperator)
IF(VISIT_PYTHON_SCRIPTING)
SET(LIBS_SOURCES
PeaksOverThresholdScriptingPluginInfo.C
PyPeaksOverThresholdAttributes.C
${COMMON_SOURCES}
)
ADD_LIBRARY(SPeaksOverThresholdOperator ${LIBS_SOURCES})
TARGET_LINK_LIBRARIES(SPeaksOverThresholdOperator visitcommon visitpy ${PYTHON_LIBRARY})
SET(INSTALLTARGETS ${INSTALLTARGETS} SPeaksOverThresholdOperator)
ENDIF(VISIT_PYTHON_SCRIPTING)
IF(VISIT_JAVA)
ADD_CUSTOM_TARGET(JavaPeaksOverThreshold ALL ${CMAKE_Java_COMPILER} ${CMAKE_Java_FLAGS} -d ${VISIT_BINARY_DIR}/java -classpath ${VISIT_BINARY_DIR}/java PeaksOverThresholdAttributes.java)
ADD_DEPENDENCIES(JavaPeaksOverThreshold JavaClient)
ENDIF(VISIT_JAVA)
ENDIF(NOT VISIT_SERVER_COMPONENTS_ONLY AND NOT VISIT_ENGINE_ONLY AND NOT VISIT_DBIO_ONLY)
ADD_LIBRARY(EPeaksOverThresholdOperator_ser ${LIBE_SOURCES})
TARGET_LINK_LIBRARIES(EPeaksOverThresholdOperator_ser visitcommon avtexpressions_ser avtfilters_ser avtpipeline_ser )
SET(INSTALLTARGETS ${INSTALLTARGETS} EPeaksOverThresholdOperator_ser)
IF(VISIT_PARALLEL)
ADD_PARALLEL_LIBRARY(EPeaksOverThresholdOperator_par ${LIBE_SOURCES})
TARGET_LINK_LIBRARIES(EPeaksOverThresholdOperator_par visitcommon avtexpressions_par avtfilters_par avtpipeline_par )
SET(INSTALLTARGETS ${INSTALLTARGETS} EPeaksOverThresholdOperator_par)
ENDIF(VISIT_PARALLEL)
VISIT_INSTALL_OPERATOR_PLUGINS(${INSTALLTARGETS})
VISIT_PLUGIN_TARGET_RTOD(operators ${INSTALLTARGETS})
VISIT_PLUGIN_TARGET_FOLDER(operators PeaksOverThreshold ${INSTALLTARGETS})
ADD_SUBDIRECTORY(r_src)
\ No newline at end of file
<?xml version="1.0"?>
<Plugin name="PeaksOverThreshold" type="operator" label="PeaksOverThreshold" version="1.0" enabled="true" mdspecificcode="false" engspecificcode="false" onlyengine="false" noengine="false" createExpression="true" exprInType="scalar" exprOutType="scalar">
<Attribute name="PeaksOverThresholdAttributes" purpose="Attributes for PeaksOverThreshold operator" persistent="true" keyframe="true" exportAPI="" exportInclude="">
<Enum name="AggregationType">
ANNUAL
SEASONAL
MONTHLY
</Enum>
<Enum name="SeasonType">
WINTER
SPRING
SUMMER
FALL
</Enum>
<Enum name="MonthType">
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
NOV
DEC
</Enum>
<Field name="aggregationType" label="Aggregation Type" type="enum" subtype="AggregationType">
ANNUAL
</Field>
<Field name="annualPercentile" label="Annual Percentile" type="double" enabler="aggregationType:ANNUAL">
0.900000
</Field>
<Field name="seasonalPercentile" label="Seasonal Percentile" type="doubleArray" length="4" enabler="aggregationType:SEASONAL">
0.900000
0.900000
0.900000
0.900000
</Field>
<Field name="monthlyPercentile" label="Monthly Percentile" type="doubleArray" length="12" enabler="aggregationType:MONTHLY">
0.900000
0.900000
0.900000
0.900000
0.900000
0.900000
0.900000
0.900000
0.900000
0.900000
0.900000
0.900000
</Field>
<Field name="season" label="Display Season" type="enum" subtype="SeasonType" enabler="aggregationType:SEASONAL">
WINTER
</Field>
<Field name="month" label="Display Month" type="enum" subtype="MonthType" enabler="aggregationType:MONTHLY">
JAN
</Field>
<Field name="dataScaling" label="Data Scaling" type="double">
86500.000000
</Field>
<Field name="dumpData" label="Dump Data" type="bool">
false
</Field>
</Attribute>
</Plugin>
This diff is collapsed.
/*****************************************************************************
*
* Copyright (c) 2000 - 2012, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
*
* This file is part of VisIt. For details, see https://visit.llnl.gov/. The
* full copyright notice is contained in the file COPYRIGHT located at the root
* of the VisIt distribution or at http://www.llnl.gov/visit/copyright.html.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* - Redistributions of source code must retain the above copyright notice,
* this list of conditions and the disclaimer below.
* - Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the disclaimer (as noted below) in the
* documentation and/or other materials provided with the distribution.
* - Neither the name of the LLNS/LLNL nor the names of its contributors may
* be used to endorse or promote products derived from this software without
* specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE LIVERMORE NATIONAL SECURITY,
* LLC, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
* DAMAGE.
*
*****************************************************************************/
#ifndef PEAKSOVERTHRESHOLDATTRIBUTES_H
#define PEAKSOVERTHRESHOLDATTRIBUTES_H
#include <string>
#include <AttributeSubject.h>
// ****************************************************************************
// Class: PeaksOverThresholdAttributes
//
// Purpose:
// Attributes for PeaksOverThreshold operator
//
// Notes: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
class PeaksOverThresholdAttributes : public AttributeSubject
{
public:
enum AggregationType
{
ANNUAL,
SEASONAL,
MONTHLY
};
enum SeasonType
{
WINTER,
SPRING,
SUMMER,
FALL
};
enum MonthType
{
JAN,
FEB,
MAR,
APR,
MAY,
JUN,
JUL,
AUG,
SEP,
OCT,
NOV,
DEC
};
// These constructors are for objects of this class
PeaksOverThresholdAttributes();
PeaksOverThresholdAttributes(const PeaksOverThresholdAttributes &obj);
protected:
// These constructors are for objects derived from this class
PeaksOverThresholdAttributes(private_tmfs_t tmfs);
PeaksOverThresholdAttributes(const PeaksOverThresholdAttributes &obj, private_tmfs_t tmfs);
public:
virtual ~PeaksOverThresholdAttributes();
virtual PeaksOverThresholdAttributes& operator = (const PeaksOverThresholdAttributes &obj);
virtual bool operator == (const PeaksOverThresholdAttributes &obj) const;
virtual bool operator != (const PeaksOverThresholdAttributes &obj) const;
private:
void Init();
void Copy(const PeaksOverThresholdAttributes &obj);
public:
virtual const std::string TypeName() const;
virtual bool CopyAttributes(const AttributeGroup *);
virtual AttributeSubject *CreateCompatible(const std::string &) const;
virtual AttributeSubject *NewInstance(bool) const;
// Property selection methods
virtual void SelectAll();
void SelectSeasonalPercentile();
void SelectMonthlyPercentile();
// Property setting methods
void SetAggregationType(AggregationType aggregationType_);
void SetAnnualPercentile(double annualPercentile_);
void SetSeasonalPercentile(const double *seasonalPercentile_);
void SetMonthlyPercentile(const double *monthlyPercentile_);
void SetSeason(SeasonType season_);
void SetMonth(MonthType month_);
void SetDataScaling(double dataScaling_);
void SetDumpData(bool dumpData_);
// Property getting methods
AggregationType GetAggregationType() const;
double GetAnnualPercentile() const;
const double *GetSeasonalPercentile() const;
double *GetSeasonalPercentile();
const double *GetMonthlyPercentile() const;
double *GetMonthlyPercentile();
SeasonType GetSeason() const;
MonthType GetMonth() const;
double GetDataScaling() const;
bool GetDumpData() const;
// Persistence methods
virtual bool CreateNode(DataNode *node, bool completeSave, bool forceAdd);
virtual void SetFromNode(DataNode *node);
// Enum conversion functions
static std::string AggregationType_ToString(AggregationType);
static bool AggregationType_FromString(const std::string &, AggregationType &);
protected:
static std::string AggregationType_ToString(int);
public:
static std::string SeasonType_ToString(SeasonType);
static bool SeasonType_FromString(const std::string &, SeasonType &);
protected:
static std::string SeasonType_ToString(int);
public:
static std::string MonthType_ToString(MonthType);
static bool MonthType_FromString(const std::string &, MonthType &);
protected:
static std::string MonthType_ToString(int);
public:
// Keyframing methods
virtual std::string GetFieldName(int index) const;
virtual AttributeGroup::FieldType GetFieldType(int index) const;
virtual std::string GetFieldTypeName(int index) const;
virtual bool FieldsEqual(int index, const AttributeGroup *rhs) const;
// IDs that can be used to identify fields in case statements
enum {
ID_aggregationType = 0,
ID_annualPercentile,
ID_seasonalPercentile,
ID_monthlyPercentile,
ID_season,
ID_month,
ID_dataScaling,
ID_dumpData,
ID__LAST
};
private:
int aggregationType;
double annualPercentile;
double seasonalPercentile[4];
double monthlyPercentile[12];
int season;
int month;
double dataScaling;
bool dumpData;
// Static class format string for type map.
static const char *TypeMapFormatString;
static const private_tmfs_t TmfsStruct;
};
#define PEAKSOVERTHRESHOLDATTRIBUTES_TMFS "idDDiidb"
#endif
This diff is collapsed.
/*****************************************************************************
*
* Copyright (c) 2000 - 2012, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
*
* This file is part of VisIt. For details, see https://visit.llnl.gov/. The
* full copyright notice is contained in the file COPYRIGHT located at the root
* of the VisIt distribution or at http://www.llnl.gov/visit/copyright.html.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* - Redistributions of source code must retain the above copyright notice,
* this list of conditions and the disclaimer below.
* - Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the disclaimer (as noted below) in the
* documentation and/or other materials provided with the distribution.
* - Neither the name of the LLNS/LLNL nor the names of its contributors may
* be used to endorse or promote products derived from this software without
* specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE LIVERMORE NATIONAL SECURITY,
* LLC, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
* DAMAGE.
*
*****************************************************************************/
// ************************************************************************* //
// File: PeaksOverThresholdCommonPluginInfo.C
// ************************************************************************* //
#include <PeaksOverThresholdPluginInfo.h>
#include <PeaksOverThresholdAttributes.h>
#include <Expression.h>
#include <ExpressionList.h>
#include <avtDatabaseMetaData.h>
#include <avtMeshMetaData.h>
#include <avtSubsetsMetaData.h>
#include <avtScalarMetaData.h>
#include <avtVectorMetaData.h>
#include <avtTensorMetaData.h>
#include <avtSymmetricTensorMetaData.h>
#include <avtArrayMetaData.h>
#include <avtMaterialMetaData.h>
#include <avtSpeciesMetaData.h>
#include <avtCurveMetaData.h>
#include <avtLabelMetaData.h>
// ****************************************************************************
// Method: PeaksOverThresholdCommonPluginInfo::AllocAttributes
//
// Purpose:
// Return a pointer to a newly allocated attribute subject.
//
// Returns: A pointer to the newly allocated attribute subject.
//
// Programmer: generated by xml2info
// Creation: omitted
//
// ****************************************************************************
AttributeSubject *
PeaksOverThresholdCommonPluginInfo::AllocAttributes()
{
return new PeaksOverThresholdAttributes;
}
// ****************************************************************************
// Method: PeaksOverThresholdCommonPluginInfo::CopyAttributes
//
// Purpose:
// Copy a PeaksOverThreshold attribute subject.
//
// Arguments:
// to The destination attribute subject.
// from The source attribute subject.
//
// Programmer: generated by xml2info
// Creation: omitted
//
// ****************************************************************************
void
PeaksOverThresholdCommonPluginInfo::CopyAttributes(AttributeSubject *to,
AttributeSubject *from)
{
*((PeaksOverThresholdAttributes *) to) = *((PeaksOverThresholdAttributes *) from);
}
// ****************************************************************************
// Method: PeaksOverThresholdCommonPluginInfo::GetCreatedExpressions
//
// Purpose:
// Gets the expressions created by this operator.
//
// Programmer: generated by xml2info
// Creation: omitted
//
// ****************************************************************************
ExpressionList *
PeaksOverThresholdCommonPluginInfo::GetCreatedExpressions(const avtDatabaseMetaData *md)
{
int i;
char name[1024], defn[1024];
ExpressionList *el = new ExpressionList;
int numScalars = md->GetNumScalars();
for (i = 0 ; i < numScalars ; i++)
{
const avtScalarMetaData *mmd = md->GetScalar(i);
{
Expression e2;
sprintf(name, "operators/PeaksOverThreshold/%s", mmd->name.c_str());
e2.SetName(name);
e2.SetType(Expression::ScalarMeshVar);
e2.SetFromOperator(true);
e2.SetOperatorName("PeaksOverThreshold");
sprintf(defn, "cell_constant(%s, 0.)", mmd->name.c_str());
e2.SetDefinition(defn);
el->AddExpressions(e2);
}
}
const ExpressionList &oldEL = md->GetExprList();
for (i = 0 ; i < oldEL.GetNumExpressions() ; i++)
{
const Expression &e = oldEL.GetExpressions(i);
if (e.GetType() == Expression::ScalarMeshVar)
{
{
if (e.GetFromOperator())
continue; // weird ordering behavior otherwise
Expression e2;
sprintf(name, "operators/PeaksOverThreshold/%s", e.GetName().c_str());
e2.SetName(name);
e2.SetType(Expression::ScalarMeshVar);
e2.SetFromOperator(true);
e2.SetOperatorName("PeaksOverThreshold");
sprintf(defn, "cell_constant(%s, 0.)", e.GetName().c_str());
e2.SetDefinition(defn);
el->AddExpressions(e2);
}
}
}
return el;
}
/*****************************************************************************
*
* Copyright (c) 2000 - 2012, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
*
* This file is part of VisIt. For details, see https://visit.llnl.gov/. The
* full copyright notice is contained in the file COPYRIGHT located at the root
* of the VisIt distribution or at http://www.llnl.gov/visit/copyright.html.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* - Redistributions of source code must retain the above copyright notice,
* this list of conditions and the disclaimer below.
* - Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the disclaimer (as noted below) in the
* documentation and/or other materials provided with the distribution.
* - Neither the name of the LLNS/LLNL nor the names of its contributors may
* be used to endorse or promote products derived from this software without
* specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE LIVERMORE NATIONAL SECURITY,
* LLC, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
* DAMAGE.
*
*****************************************************************************/
// ************************************************************************* //
// File: PeaksOverThresholdEnginePluginInfo.C
// ************************************************************************* //
#include <PeaksOverThresholdPluginInfo.h>
#include <avtPeaksOverThresholdFilter.h>
// ****************************************************************************
// Function: GetEngineInfo
//
// Purpose:
// Return a new EnginePluginInfo for the PeaksOverThreshold operator.
//
// Programmer: generated by xml2info
// Creation: omitted
//
// ****************************************************************************
extern "C" OP_EXPORT EngineOperatorPluginInfo* PeaksOverThreshold_GetEngineInfo()
{
return new PeaksOverThresholdEnginePluginInfo;
}
// ****************************************************************************
// Method: PeaksOverThresholdEnginePluginInfo::AllocAvtPluginFilter
//
// Purpose:
// Return a pointer to a newly allocated avtPluginFilter.
//
// Returns: A pointer to the newly allocated avtPluginFilter.
//
// Programmer: generated by xml2info
// Creation: omitted
//
// ****************************************************************************
avtPluginFilter *
PeaksOverThresholdEnginePluginInfo::AllocAvtPluginFilter()
{
return new avtPeaksOverThresholdFilter;
}
/*****************************************************************************
*
* Copyright (c) 2000 - 2012, Lawrence Livermore National Security, LLC
* Produced at the Lawrence Livermore National Laboratory
* LLNL-CODE-442911
* All rights reserved.
*
* This file is part of VisIt. For details, see https://visit.llnl.gov/. The
* full copyright notice is contained in the file COPYRIGHT located at the root
* of the VisIt distribution or at http://www.llnl.gov/visit/copyright.html.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* - Redistributions of source code must retain the above copyright notice,