mirror of
https://github.com/xdsopl/robot36.git
synced 2026-01-23 08:10:15 +01:00
Adding BaseMode and postProcessScopeImage()
This commit is contained in:
parent
1a4ffac26e
commit
5b20da27a0
16
app/src/main/java/xdsopl/robot36/BaseMode.java
Normal file
16
app/src/main/java/xdsopl/robot36/BaseMode.java
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
/*
|
||||
Base class for all modes
|
||||
|
||||
Copyright 2025 Marek Ossowski <marek0ossowski@gmail.com>
|
||||
*/
|
||||
|
||||
package xdsopl.robot36;
|
||||
|
||||
import android.graphics.Bitmap;
|
||||
|
||||
public abstract class BaseMode implements Mode {
|
||||
@Override
|
||||
public Bitmap postProcessScopeImage(Bitmap bmp) {
|
||||
return bmp;
|
||||
}
|
||||
}
|
||||
|
|
@ -828,7 +828,14 @@ public class MainActivity extends AppCompatActivity {
|
|||
int height = scopeBuffer.height / 2;
|
||||
int stride = scopeBuffer.width;
|
||||
int offset = stride * scopeBuffer.line;
|
||||
storeBitmap(Bitmap.createBitmap(scopeBuffer.pixels, offset, stride, width, height, Bitmap.Config.ARGB_8888));
|
||||
Bitmap bmp = Bitmap.createBitmap(scopeBuffer.pixels, offset, stride, width, height, Bitmap.Config.ARGB_8888);
|
||||
|
||||
if (decoder != null)
|
||||
{
|
||||
bmp = decoder.currentMode.postProcessScopeImage(bmp);
|
||||
}
|
||||
|
||||
storeBitmap(bmp);
|
||||
}
|
||||
|
||||
private void createScope(Configuration config) {
|
||||
|
|
|
|||
|
|
@ -6,6 +6,8 @@ Copyright 2024 Ahmet Inan <xdsopl@gmail.com>
|
|||
|
||||
package xdsopl.robot36;
|
||||
|
||||
import android.graphics.Bitmap;
|
||||
|
||||
public interface Mode {
|
||||
String getName();
|
||||
|
||||
|
|
@ -21,6 +23,8 @@ public interface Mode {
|
|||
|
||||
int getScanLineSamples();
|
||||
|
||||
Bitmap postProcessScopeImage(Bitmap bmp);
|
||||
|
||||
void resetState();
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ Copyright 2024 Ahmet Inan <xdsopl@gmail.com>
|
|||
|
||||
package xdsopl.robot36;
|
||||
|
||||
public class PaulDon implements Mode {
|
||||
public class PaulDon extends BaseMode {
|
||||
private final ExponentialMovingAverage lowPassFilter;
|
||||
private final int horizontalPixels;
|
||||
private final int verticalPixels;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ Copyright 2024 Ahmet Inan <xdsopl@gmail.com>
|
|||
|
||||
package xdsopl.robot36;
|
||||
|
||||
public class RGBDecoder implements Mode {
|
||||
public class RGBDecoder extends BaseMode {
|
||||
private final ExponentialMovingAverage lowPassFilter;
|
||||
private final int horizontalPixels;
|
||||
private final int verticalPixels;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ Copyright 2024 Ahmet Inan <xdsopl@gmail.com>
|
|||
|
||||
package xdsopl.robot36;
|
||||
|
||||
public class RawDecoder implements Mode {
|
||||
public class RawDecoder extends BaseMode {
|
||||
private final ExponentialMovingAverage lowPassFilter;
|
||||
private final int smallPictureMaxSamples;
|
||||
private final int mediumPictureMaxSamples;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ Copyright 2024 Ahmet Inan <xdsopl@gmail.com>
|
|||
|
||||
package xdsopl.robot36;
|
||||
|
||||
public class Robot_36_Color implements Mode {
|
||||
public class Robot_36_Color extends BaseMode {
|
||||
private final ExponentialMovingAverage lowPassFilter;
|
||||
private final int horizontalPixels;
|
||||
private final int verticalPixels;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ Copyright 2024 Ahmet Inan <xdsopl@gmail.com>
|
|||
|
||||
package xdsopl.robot36;
|
||||
|
||||
public class Robot_72_Color implements Mode {
|
||||
public class Robot_72_Color extends BaseMode {
|
||||
private final ExponentialMovingAverage lowPassFilter;
|
||||
private final int horizontalPixels;
|
||||
private final int verticalPixels;
|
||||
|
|
|
|||
Loading…
Reference in a new issue