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;
|
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.Manifest;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.graphics.Color;
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
import android.widget.ToggleButton;
|
import android.widget.ToggleButton;
|
||||||
|
|
||||||
import com.example.ueberwachungssystem.VideoDetection.DetectionReport;
|
|
||||||
import com.example.ueberwachungssystem.VideoDetection.VideoDetector;
|
import com.example.ueberwachungssystem.VideoDetection.VideoDetector;
|
||||||
|
|
||||||
@ExperimentalGetImage
|
@ExperimentalGetImage
|
||||||
|
@ -17,6 +17,7 @@ import androidx.camera.view.PreviewView;
|
|||||||
import androidx.core.content.ContextCompat;
|
import androidx.core.content.ContextCompat;
|
||||||
import androidx.lifecycle.LifecycleOwner;
|
import androidx.lifecycle.LifecycleOwner;
|
||||||
|
|
||||||
|
import com.example.ueberwachungssystem.DetectionReport;
|
||||||
import com.google.common.util.concurrent.ListenableFuture;
|
import com.google.common.util.concurrent.ListenableFuture;
|
||||||
|
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user