//============================================================================ // Copyright (c) Kitware, Inc. // All rights reserved. // See LICENSE.txt for details. // // This software is distributed WITHOUT ANY WARRANTY; without even // the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR // PURPOSE. See the above copyright notice for more information. //============================================================================ namespace vtkm { namespace cont { template CellSetStructured::CellSetStructured(const CellSetStructured& src) : CellSet(src) , Structure(src.Structure) { } template CellSetStructured::CellSetStructured(CellSetStructured&& src) noexcept : CellSet(std::forward(src)), Structure(std::move(src.Structure)) { } template CellSetStructured& CellSetStructured::operator=( const CellSetStructured& src) { this->CellSet::operator=(src); this->Structure = src.Structure; return *this; } template CellSetStructured& CellSetStructured::operator=( CellSetStructured&& src) noexcept { this->CellSet::operator=(std::forward(src)); this->Structure = std::move(src.Structure); return *this; } template template typename CellSetStructured::SchedulingRangeType CellSetStructured::GetSchedulingRange(TopologyElement) const { VTKM_IS_TOPOLOGY_ELEMENT_TAG(TopologyElement); return this->Structure.GetSchedulingRange(TopologyElement()); } template template typename CellSetStructured< DIMENSION>::template ExecutionTypes::ExecObjectType CellSetStructured::PrepareForInput(DeviceAdapter, FromTopology, ToTopology) const { using ConnectivityType = typename ExecutionTypes::ExecObjectType; return ConnectivityType(this->Structure); } template void CellSetStructured::PrintSummary(std::ostream& out) const { out << " StructuredCellSet: " << this->GetName() << std::endl; this->Structure.PrintSummary(out); } } }