Mercurial > hg > ugly-duckling
diff src/app/services/feature-extraction/feature-extraction.service.ts @ 64:270f59ef3b83
Incorporate recent piper changes and use output descriptor for some basic feature discrimination to render appropriate layers.
author | Lucas Thompson <dev@lucas.im> |
---|---|
date | Mon, 12 Dec 2016 00:41:37 +0000 |
parents | 2171dd56756c |
children | 2c3fe51ad1f0 |
line wrap: on
line diff
--- a/src/app/services/feature-extraction/feature-extraction.service.ts Fri Dec 09 14:06:44 2016 +0000 +++ b/src/app/services/feature-extraction/feature-extraction.service.ts Mon Dec 12 00:41:37 2016 +0000 @@ -2,8 +2,9 @@ import { ListResponse, ListRequest } from "piper"; -import {SimpleRequest, FeatureCollection} from "piper/HigherLevelUtilities"; -import {FeatureList} from "piper/Feature"; +import { + SimpleRequest, SimpleResponse +} from "piper/HigherLevelUtilities"; import {Subject} from "rxjs/Subject"; import {Observable} from "rxjs"; @@ -17,18 +18,16 @@ result: ResponseType; } -export type Extracted = FeatureList | FeatureCollection; - @Injectable() export class FeatureExtractionService { private worker: Worker; - private featuresExtracted: Subject<Extracted>; - featuresExtracted$: Observable<Extracted>; + private featuresExtracted: Subject<SimpleResponse>; + featuresExtracted$: Observable<SimpleResponse>; constructor() { this.worker = new Worker('bootstrap-feature-extraction-worker.js'); - this.featuresExtracted = new Subject<Extracted>(); + this.featuresExtracted = new Subject<SimpleResponse>(); this.featuresExtracted$ = this.featuresExtracted.asObservable(); } @@ -39,8 +38,8 @@ ).then(msg => msg.result); } - process(request: SimpleRequest): Promise<FeatureList> { - return this.request<SimpleRequest, FeatureList>( + process(request: SimpleRequest): Promise<SimpleResponse> { + return this.request<SimpleRequest, SimpleResponse>( {method: 'process', params: request}, (ev: MessageEvent) => ev.data.method === 'process' ).then(msg => { @@ -49,8 +48,8 @@ }); } - collect(request: SimpleRequest): Promise<FeatureCollection> { - return this.request<SimpleRequest, FeatureCollection>( + collect(request: SimpleRequest): Promise<SimpleResponse> { + return this.request<SimpleRequest, SimpleResponse>( {method: 'collect', params: request}, (ev: MessageEvent) => ev.data.method === 'collect' ).then(msg => {