package incheon.ags.mrb.analysis.service;

import incheon.ags.mrb.analysis.vo.AnlsHstryVO;
import incheon.ags.mrb.analysis.vo.request.*;

/**
 * 공간 분석 서비스 인터페이스
 */
public interface SpatialAnalysisService {

    AnlsHstryVO startAggregatePoints(AggregatePointsRequestDTO request);

    AnlsHstryVO startBuffer(BufferRequestDTO request);

    AnlsHstryVO startUnion(UnionRequestDTO request);

    AnlsHstryVO startClip(ClipRequestDTO request);

    AnlsHstryVO startClustering(ClusteringRequestDTO request);

    AnlsHstryVO startDissolve(DissolveRequestDTO request);

    AnlsHstryVO startExtract(ExtractRequestDTO request);

    AnlsHstryVO startHotSpot(HotSpotRequestDTO request);

    AnlsHstryVO startIntersect(IntersectRequestDTO request);

    AnlsHstryVO startMerge(MergeRequestDTO request);

    AnlsHstryVO startSummarizeNearby(SummarizeNearbyRequestDTO request);

    AnlsHstryVO startSummarizeWithin(SummarizeWithinRequestDTO request);

    AnlsHstryVO startDensity(DensityRequestDTO request);

    AnlsHstryVO startJoinFeatures(JoinFeaturesRequestDTO request);
}
