useDynLib(LatticeKrig,.registration=TRUE)

exportPattern("^[^\\.]")
importFrom("graphics", "lines", "polygon")
importFrom("methods", "new")
importFrom("stats", "optimize", "predict", "rnorm", "var", "optim","sd","pt")
importFrom("methods", "is")
import("spam")
import("spam64")
import("fields")
import("fftwtools") 

importFrom("graphics", "contour", "par")
importFrom("stats", "pnorm", "runif")
importFrom("viridisLite", "viridis","turbo")
  
S3method(print, LKrig)
S3method(print,LatticeKrig)
S3method(print, LKinfo)

S3method(predict, LKrig)
S3method(predictSE, LKrig)
S3method(predictSurface, LKrig)

S3method(summary, LKrig)

S3method( surface,LKrig)

S3method(LKinfoCheck, default)
S3method(LKinfoCheck, LKRectangle)
S3method(LKrigSAR,LKBox)
S3method(LKrigSAR,LKCylinder)
S3method(LKrigSAR,LKInterval)
S3method(LKrigSAR,LKRectangle)
S3method(LKrigSAR,LKRing)
S3method(LKrigSAR,LKSphere)
S3method(LKrigSAR,default)

S3method(LKrigLatticeCenters,LKBox)
S3method(LKrigLatticeCenters,LKCylinder)
S3method(LKrigLatticeCenters,LKInterval)
S3method(LKrigLatticeCenters,LKRectangle)
S3method(LKrigLatticeCenters,LKRing)
S3method(LKrigLatticeCenters,LKSphere)
S3method(LKrigLatticeCenters,default)

S3method(LKrigLatticeScales,default)

S3method(LKrigSetupLattice,LKBox)
S3method(LKrigSetupLattice,LKCylinder)
S3method(LKrigSetupLattice,LKInterval)
S3method(LKrigSetupLattice,LKRectangle)
S3method(LKrigSetupLattice,LKRing)
S3method(LKrigSetupLattice,LKSphere)
S3method(LKrigSetupLattice,default)

S3method(setDefaultsLKinfo,LKInterval)
S3method(setDefaultsLKinfo,LKBox)
S3method(setDefaultsLKinfo,LKCylinder)
S3method(setDefaultsLKinfo,LKRectangle)
S3method(setDefaultsLKinfo,LKRing)
S3method(setDefaultsLKinfo,LKSphere)
S3method(setDefaultsLKinfo,default)

S3method(LKrigNormalizeBasisFast,LKRectangle)
S3method(LKrigNormalizeBasisFast,default)
 
S3method(LKrigSetupAlpha,default)
S3method( LKrigSetupAwght,LKRectangle)
    
S3method(LKrigSetupAwght,default)


