1234567891011121314151617181920212223242526272829303132333435363738 |
- package com.example.greenwatch.sensors.MicrofonHelperClasses;
-
- public class RingPuffer {
-
- private short[] puffer;
- private final int laenge;
- private int anzahlEnthaltenerDaten;
- private int position;
-
-
- public RingPuffer(int n) {
- laenge = n;
- anzahlEnthaltenerDaten = 0;
- position = 0;
- puffer = new short[laenge];
- }
-
- public void hinzufuegen(short wert) {
- puffer[position] = wert;
- position++;
- if (position >= laenge) {
- position = 0;
- }
- if (anzahlEnthaltenerDaten < laenge) {
- anzahlEnthaltenerDaten++;
- }
- }
-
- public short maximum() {
- short max = 0;
- for (int i = 0; i < anzahlEnthaltenerDaten; i++) {
- if (puffer[i] > max) {
- max = puffer[i];
- }
- }
- return max;
- }
- }
|