00001 #ifndef Impala_Core_Array_MakeCircle_h
00002 #define Impala_Core_Array_MakeCircle_h
00003
00004 #include "Core/Array/Trait/InOutCircle.h"
00005 #include "Core/Array/Pattern/PatInOutOp.h"
00006
00007 namespace Impala
00008 {
00009 namespace Core
00010 {
00011 namespace Array
00012 {
00013
00014
00015
00016 template<class ArrayT>
00017 inline void
00018 MakeCircle(ArrayT*& dst, int centerX, int centerY, Real64 radius,
00019 typename ArrayT::ArithType circleValue,
00020 typename ArrayT::ArithType outsideValue)
00021 {
00022 Trait::InOutCircle<ArrayT> circle(centerX, centerY, radius, circleValue, outsideValue);
00023 Pattern::PatInOutOp(dst, circle);
00024 }
00025
00026 }
00027 }
00028 }
00029
00030 #endif