Added Abstract class Detector
This commit is contained in:
parent
ba75c58a23
commit
f9797f2dca
@ -1,4 +1,4 @@
|
||||
package com.example.ueberwachungssystem.VideoDetection;
|
||||
package com.example.ueberwachungssystem;
|
||||
|
||||
import android.util.Log;
|
||||
|
@ -0,0 +1,30 @@
|
||||
package com.example.ueberwachungssystem;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
abstract public class Detector {
|
||||
private OnDetectionListener listener;
|
||||
|
||||
public Detector(Context context) {};
|
||||
|
||||
public interface OnDetectionListener {
|
||||
void onDetection(@NonNull DetectionReport detectionReport);
|
||||
}
|
||||
public void setOnDetectionListener(@NonNull OnDetectionListener listener) {
|
||||
this.listener = listener;
|
||||
}
|
||||
|
||||
private void reportViolation(String detectorID, String detectionType, float amplitude) {
|
||||
if (listener != null) {
|
||||
DetectionReport detectionReport = new DetectionReport(detectorID, detectionType, amplitude);
|
||||
listener.onDetection(detectionReport);
|
||||
} else {
|
||||
throw new IllegalStateException("No listener set for violation reporting");
|
||||
}
|
||||
}
|
||||
|
||||
public abstract void startDetection();
|
||||
public abstract void stopDetection();
|
||||
}
|
@ -9,14 +9,12 @@ import androidx.camera.core.ExperimentalGetImage;
|
||||
|
||||
import android.Manifest;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.graphics.Color;
|
||||
import android.os.Bundle;
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
import android.widget.ToggleButton;
|
||||
|
||||
import com.example.ueberwachungssystem.VideoDetection.DetectionReport;
|
||||
import com.example.ueberwachungssystem.VideoDetection.VideoDetector;
|
||||
|
||||
@ExperimentalGetImage
|
||||
|
@ -17,6 +17,7 @@ import androidx.camera.view.PreviewView;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.lifecycle.LifecycleOwner;
|
||||
|
||||
import com.example.ueberwachungssystem.DetectionReport;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
|
||||
import java.nio.ByteBuffer;
|
||||
|
Loading…
x
Reference in New Issue
Block a user