Commit a0cf7240 authored by mdurant's avatar mdurant
Browse files

Adding the new 1-d FFT operator. Not activated in the CMakeLists.txt file yet

git-svn-id: http://visit.ilight.com/svn/visit/trunk/src@16080 18c085ea-50e0-402c-830e-de6fd14e8384
parent 81ff8828
# DO NOT EDIT THIS FILE! THIS FILE IS AUTOMATICALLY GENERATED BY xml2cmake
PROJECT(FFT)
INCLUDE(${VISIT_SOURCE_DIR}/CMake/PluginMacros.cmake)
SET(COMMON_SOURCES
FFTPluginInfo.C
FFTCommonPluginInfo.C
FFTAttributes.C
)
SET(LIBI_SOURCES
FFTPluginInfo.C
)
SET(LIBG_SOURCES
FFTGUIPluginInfo.C
QvisFFTWindow.C
${COMMON_SOURCES}
)
SET(LIBG_MOC_SOURCES
QvisFFTWindow.h
)
QT_WRAP_CPP(GFFTOperator LIBG_SOURCES ${LIBG_MOC_SOURCES})
SET(LIBV_SOURCES
FFTViewerPluginInfo.C
${COMMON_SOURCES}
)
SET(LIBE_SOURCES
FFTEnginePluginInfo.C
avtFFTFilter.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/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(IFFTOperator ${LIBI_SOURCES})
TARGET_LINK_LIBRARIES(IFFTOperator visitcommon)
SET(INSTALLTARGETS IFFTOperator)
IF(NOT VISIT_SERVER_COMPONENTS_ONLY AND NOT VISIT_ENGINE_ONLY AND NOT VISIT_DBIO_ONLY)
ADD_LIBRARY(GFFTOperator ${LIBG_SOURCES})
TARGET_LINK_LIBRARIES(GFFTOperator visitcommon gui )
ADD_LIBRARY(VFFTOperator ${LIBV_SOURCES})
TARGET_LINK_LIBRARIES(VFFTOperator visitcommon viewer )
SET(INSTALLTARGETS ${INSTALLTARGETS} GFFTOperator VFFTOperator)
IF(VISIT_PYTHON_SCRIPTING)
SET(LIBS_SOURCES
FFTScriptingPluginInfo.C
PyFFTAttributes.C
${COMMON_SOURCES}
)
ADD_LIBRARY(SFFTOperator ${LIBS_SOURCES})
TARGET_LINK_LIBRARIES(SFFTOperator visitcommon visitpy ${PYTHON_LIBRARY})
SET(INSTALLTARGETS ${INSTALLTARGETS} SFFTOperator)
ENDIF(VISIT_PYTHON_SCRIPTING)
IF(VISIT_JAVA)
ADD_CUSTOM_TARGET(JavaFFT ALL ${CMAKE_Java_COMPILER} ${CMAKE_Java_FLAGS} -d ${VISIT_BINARY_DIR}/java -classpath ${VISIT_BINARY_DIR}/java FFTAttributes.java)
ADD_DEPENDENCIES(JavaFFT JavaClient)
ENDIF(VISIT_JAVA)
ENDIF(NOT VISIT_SERVER_COMPONENTS_ONLY AND NOT VISIT_ENGINE_ONLY AND NOT VISIT_DBIO_ONLY)
ADD_LIBRARY(EFFTOperator_ser ${LIBE_SOURCES})
TARGET_LINK_LIBRARIES(EFFTOperator_ser visitcommon avtexpressions_ser avtfilters_ser avtpipeline_ser )
SET(INSTALLTARGETS ${INSTALLTARGETS} EFFTOperator_ser)
IF(VISIT_PARALLEL)
ADD_PARALLEL_LIBRARY(EFFTOperator_par ${LIBE_SOURCES})
TARGET_LINK_LIBRARIES(EFFTOperator_par visitcommon avtexpressions_par avtfilters_par avtpipeline_par )
SET(INSTALLTARGETS ${INSTALLTARGETS} EFFTOperator_par)
ENDIF(VISIT_PARALLEL)
VISIT_INSTALL_OPERATOR_PLUGINS(${INSTALLTARGETS})
VISIT_PLUGIN_TARGET_PREFIX(${INSTALLTARGETS})
VISIT_PLUGIN_TARGET_FOLDER(operators ${INSTALLTARGETS})
<?xml version="1.0"?>
<Plugin name="FFT" type="operator" label="FFT" version="1.0" enabled="true" mdspecificcode="false" engspecificcode="false" onlyengine="false" noengine="false" category="Transforms">
<Attribute name="FFTAttributes" purpose="This class contains attributes for the FFT operator." persistent="true" keyframe="true" exportAPI="" exportInclude="">
<Field name="dummy" label="Dummy attribute" type="int">
0
</Field>
</Attribute>
</Plugin>
/*****************************************************************************
*
* Copyright (c) 2000 - 2011, 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.
*
*****************************************************************************/
#include <FFTAttributes.h>
#include <DataNode.h>
// ****************************************************************************
// Method: FFTAttributes::FFTAttributes
//
// Purpose:
// Init utility for the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
void FFTAttributes::Init()
{
dummy = 0;
FFTAttributes::SelectAll();
}
// ****************************************************************************
// Method: FFTAttributes::FFTAttributes
//
// Purpose:
// Copy utility for the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
void FFTAttributes::Copy(const FFTAttributes &obj)
{
dummy = obj.dummy;
FFTAttributes::SelectAll();
}
// Type map format string
const char *FFTAttributes::TypeMapFormatString = FFTATTRIBUTES_TMFS;
const AttributeGroup::private_tmfs_t FFTAttributes::TmfsStruct = {FFTATTRIBUTES_TMFS};
// ****************************************************************************
// Method: FFTAttributes::FFTAttributes
//
// Purpose:
// Default constructor for the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
FFTAttributes::FFTAttributes() :
AttributeSubject(FFTAttributes::TypeMapFormatString)
{
FFTAttributes::Init();
}
// ****************************************************************************
// Method: FFTAttributes::FFTAttributes
//
// Purpose:
// Constructor for the derived classes of FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
FFTAttributes::FFTAttributes(private_tmfs_t tmfs) :
AttributeSubject(tmfs.tmfs)
{
FFTAttributes::Init();
}
// ****************************************************************************
// Method: FFTAttributes::FFTAttributes
//
// Purpose:
// Copy constructor for the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
FFTAttributes::FFTAttributes(const FFTAttributes &obj) :
AttributeSubject(FFTAttributes::TypeMapFormatString)
{
FFTAttributes::Copy(obj);
}
// ****************************************************************************
// Method: FFTAttributes::FFTAttributes
//
// Purpose:
// Copy constructor for derived classes of the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
FFTAttributes::FFTAttributes(const FFTAttributes &obj, private_tmfs_t tmfs) :
AttributeSubject(tmfs.tmfs)
{
FFTAttributes::Copy(obj);
}
// ****************************************************************************
// Method: FFTAttributes::~FFTAttributes
//
// Purpose:
// Destructor for the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
FFTAttributes::~FFTAttributes()
{
// nothing here
}
// ****************************************************************************
// Method: FFTAttributes::operator =
//
// Purpose:
// Assignment operator for the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
FFTAttributes&
FFTAttributes::operator = (const FFTAttributes &obj)
{
if (this == &obj) return *this;
FFTAttributes::Copy(obj);
return *this;
}
// ****************************************************************************
// Method: FFTAttributes::operator ==
//
// Purpose:
// Comparison operator == for the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
bool
FFTAttributes::operator == (const FFTAttributes &obj) const
{
// Create the return value
return ((dummy == obj.dummy));
}
// ****************************************************************************
// Method: FFTAttributes::operator !=
//
// Purpose:
// Comparison operator != for the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
bool
FFTAttributes::operator != (const FFTAttributes &obj) const
{
return !(this->operator == (obj));
}
// ****************************************************************************
// Method: FFTAttributes::TypeName
//
// Purpose:
// Type name method for the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
const std::string
FFTAttributes::TypeName() const
{
return "FFTAttributes";
}
// ****************************************************************************
// Method: FFTAttributes::CopyAttributes
//
// Purpose:
// CopyAttributes method for the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
bool
FFTAttributes::CopyAttributes(const AttributeGroup *atts)
{
if(TypeName() != atts->TypeName())
return false;
// Call assignment operator.
const FFTAttributes *tmp = (const FFTAttributes *)atts;
*this = *tmp;
return true;
}
// ****************************************************************************
// Method: FFTAttributes::CreateCompatible
//
// Purpose:
// CreateCompatible method for the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
AttributeSubject *
FFTAttributes::CreateCompatible(const std::string &tname) const
{
AttributeSubject *retval = 0;
if(TypeName() == tname)
retval = new FFTAttributes(*this);
// Other cases could go here too.
return retval;
}
// ****************************************************************************
// Method: FFTAttributes::NewInstance
//
// Purpose:
// NewInstance method for the FFTAttributes class.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
AttributeSubject *
FFTAttributes::NewInstance(bool copy) const
{
AttributeSubject *retval = 0;
if(copy)
retval = new FFTAttributes(*this);
else
retval = new FFTAttributes;
return retval;
}
// ****************************************************************************
// Method: FFTAttributes::SelectAll
//
// Purpose:
// Selects all attributes.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
void
FFTAttributes::SelectAll()
{
Select(ID_dummy, (void *)&dummy);
}
///////////////////////////////////////////////////////////////////////////////
// Persistence methods
///////////////////////////////////////////////////////////////////////////////
// ****************************************************************************
// Method: FFTAttributes::CreateNode
//
// Purpose:
// This method creates a DataNode representation of the object so it can be saved to a config file.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
bool
FFTAttributes::CreateNode(DataNode *parentNode, bool completeSave, bool forceAdd)
{
if(parentNode == 0)
return false;
FFTAttributes defaultObject;
bool addToParent = false;
// Create a node for FFTAttributes.
DataNode *node = new DataNode("FFTAttributes");
if(completeSave || !FieldsEqual(ID_dummy, &defaultObject))
{
addToParent = true;
node->AddNode(new DataNode("dummy", dummy));
}
// Add the node to the parent node.
if(addToParent || forceAdd)
parentNode->AddNode(node);
else
delete node;
return (addToParent || forceAdd);
}
// ****************************************************************************
// Method: FFTAttributes::SetFromNode
//
// Purpose:
// This method sets attributes in this object from values in a DataNode representation of the object.
//
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: omitted
//
// Modifications:
//
// ****************************************************************************
void
FFTAttributes::SetFromNode(DataNode *parentNode)
{
if(parentNode == 0)
return;
DataNode *searchNode = parentNode->GetNode("FFTAttributes");
if(searchNode == 0)
return;
DataNode *node;
if((node = searchNode->GetNode("dummy")) != 0)
SetDummy(node->AsInt());
}
///////////////////////////////////////////////////////////////////////////////
// Set property methods
///////////////////////////////////////////////////////////////////////////////
void
FFTAttributes::SetDummy(int dummy_)
{
dummy = dummy_;
Select(ID_dummy, (void *)&dummy);
}
///////////////////////////////////////////////////////////////////////////////
// Get property methods
///////////////////////////////////////////////////////////////////////////////
int
FFTAttributes::GetDummy() const
{
return dummy;
}
///////////////////////////////////////////////////////////////////////////////
// Keyframing methods
///////////////////////////////////////////////////////////////////////////////
// ****************************************************************************
// Method: FFTAttributes::GetFieldName
//
// Purpose: