Skip to content

Commit de84523

Browse files
authored
Merge pull request #16 from visualcamp/develop
Develop
2 parents a04a9e1 + 89239a8 commit de84523

30 files changed

+638
-197
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
### 난독화하려면 proguard-rules.pro에 추가해야함
1111
```
12-
-keep interface camp.visual.libgaze.callbacks.jni.LibGazeJNICallback {
12+
-keep class camp.visual.libgaze.callbacks.JNICallbackDispatcher {
1313
*;
1414
}
1515
```

app/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ android {
55
compileSdkVersion rootProject.compileSdkVersion
66

77
defaultConfig {
8-
applicationId "visual.camp.sample.app"
8+
applicationId "camp.visual.android.sample.seesosample"
99
minSdkVersion rootProject.minSdkVersion
1010
targetSdkVersion rootProject.targetSdkVersion
1111
versionCode 1

app/src/main/AndroidManifest.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
android:supportsRtl="true"
1111
android:theme="@style/AppTheme">
1212
<activity android:name=".activity.MainActivity"
13-
android:screenOrientation="portrait">
13+
android:screenOrientation="landscape">
1414
<intent-filter>
1515
<action android:name="android.intent.action.MAIN" />
1616
<category android:name="android.intent.category.LAUNCHER" />

app/src/main/java/visual/camp/sample/app/GazeTrackerManager.java

Lines changed: 19 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import camp.visual.gazetracker.GazeTracker;
66
import camp.visual.gazetracker.callback.CalibrationCallback;
77
import camp.visual.gazetracker.callback.GazeCallback;
8-
import camp.visual.gazetracker.callback.GazeStatusCallback; // beta
8+
import camp.visual.gazetracker.callback.UserStatusCallback;
99
import camp.visual.gazetracker.callback.GazeTrackerCallback;
1010
import camp.visual.gazetracker.callback.ImageCallback;
1111
import camp.visual.gazetracker.callback.InitializationCallback;
@@ -14,12 +14,13 @@
1414
import camp.visual.gazetracker.constant.CalibrationModeType;
1515
import camp.visual.gazetracker.constant.InitializationErrorType;
1616
import camp.visual.gazetracker.constant.StatusErrorType;
17-
import camp.visual.gazetracker.constant.GazeStatusOption; // beta
17+
import camp.visual.gazetracker.constant.UserStatusOption;
1818
import camp.visual.gazetracker.device.GazeDevice;
1919
import camp.visual.gazetracker.gaze.GazeInfo;
2020
import java.lang.ref.WeakReference;
2121
import java.util.ArrayList;
2222
import java.util.List;
23+
2324
import visual.camp.sample.app.calibration.CalibrationDataStorage;
2425

2526
public class GazeTrackerManager {
@@ -28,9 +29,7 @@ public class GazeTrackerManager {
2829
private List<CalibrationCallback> calibrationCallbacks = new ArrayList<>();
2930
private List<StatusCallback> statusCallbacks = new ArrayList<>();
3031
private List<ImageCallback> imageCallbacks = new ArrayList<>();
31-
32-
// Gaze Status Callbacks (beta)
33-
private List<GazeStatusCallback> gazeStatusCallbacks = new ArrayList<>();
32+
private List<UserStatusCallback> userStatusCallbacks = new ArrayList<>();
3433

3534
static private GazeTrackerManager mInstance = null;
3635

@@ -61,20 +60,11 @@ public boolean hasGazeTracker() {
6160
return gazeTracker != null;
6261
}
6362

64-
// Without Gaze Status
65-
public void initGazeTracker(InitializationCallback callback) {
66-
GazeDevice gazeDevice = new GazeDevice();
67-
initializationCallbacks.add(callback);
68-
69-
GazeTracker.initGazeTracker(mContext.get(), gazeDevice, SEESO_LICENSE_KEY, initializationCallback);
70-
}
71-
72-
// With Gaze Status (beta)
73-
public void initGazeTracker(InitializationCallback callback, GazeStatusOption[] options) {
63+
public void initGazeTracker(InitializationCallback callback, UserStatusOption option) {
7464
GazeDevice gazeDevice = new GazeDevice();
7565
initializationCallbacks.add(callback);
7666

77-
GazeTracker.initGazeTracker(mContext.get(), gazeDevice, SEESO_LICENSE_KEY, initializationCallbackWithOptions, options);
67+
GazeTracker.initGazeTracker(mContext.get(), gazeDevice, SEESO_LICENSE_KEY, initializationCallback, option);
7868
}
7969

8070
public void deinitGazeTracker() {
@@ -98,9 +88,8 @@ public void setGazeTrackerCallbacks(GazeTrackerCallback... callbacks) {
9888
} else if (callback instanceof StatusCallback) {
9989
statusCallbacks.add((StatusCallback) callback);
10090

101-
} else if (callback instanceof GazeStatusCallback) {
102-
// Add Gaze Status Callback (Beta)
103-
gazeStatusCallbacks.add((GazeStatusCallback) callback);
91+
} else if (callback instanceof UserStatusCallback) {
92+
userStatusCallbacks.add((UserStatusCallback) callback);
10493
}
10594
}
10695
}
@@ -205,8 +194,6 @@ public void removeCameraPreview(TextureView preview) {
205194
}
206195

207196
// GazeTracker Callbacks
208-
209-
// Without Gaze Status
210197
private final InitializationCallback initializationCallback = new InitializationCallback() {
211198
@Override
212199
public void onInitialized(GazeTracker gazeTracker, InitializationErrorType initializationErrorType) {
@@ -216,25 +203,7 @@ public void onInitialized(GazeTracker gazeTracker, InitializationErrorType initi
216203
}
217204
initializationCallbacks.clear();
218205
if (gazeTracker != null) {
219-
gazeTracker.setCallbacks(gazeCallback, calibrationCallback, imageCallback, statusCallback);
220-
if (cameraPreview != null) {
221-
gazeTracker.setCameraPreview(cameraPreview.get());
222-
}
223-
}
224-
}
225-
};
226-
227-
// With Gaze Status (beta)
228-
private final InitializationCallback initializationCallbackWithOptions = new InitializationCallback() {
229-
@Override
230-
public void onInitialized(GazeTracker gazeTracker, InitializationErrorType initializationErrorType) {
231-
setGazeTracker(gazeTracker);
232-
for (InitializationCallback initializationCallback : initializationCallbacks) {
233-
initializationCallback.onInitialized(gazeTracker, initializationErrorType);
234-
}
235-
initializationCallbacks.clear();
236-
if (gazeTracker != null) {
237-
gazeTracker.setCallbacks(gazeCallback, calibrationCallback, imageCallback, statusCallback, gazeStatusCallback);
206+
gazeTracker.setCallbacks(gazeCallback, calibrationCallback, imageCallback, statusCallback, userStatusCallback);
238207
if (cameraPreview != null) {
239208
gazeTracker.setCameraPreview(cameraPreview.get());
240209
}
@@ -251,26 +220,25 @@ public void onGaze(GazeInfo gazeInfo) {
251220
}
252221
};
253222

254-
// Gaze Status Callback (beta)
255-
private GazeStatusCallback gazeStatusCallback = new GazeStatusCallback() {
223+
private UserStatusCallback userStatusCallback = new UserStatusCallback() {
256224
@Override
257-
public void onAttention(float attentionScore) {
258-
for (GazeStatusCallback gazeStatusCallback : gazeStatusCallbacks) {
259-
gazeStatusCallback.onAttention(attentionScore);
225+
public void onAttention(long timestampBegin, long timestampEnd, float attentionScore) {
226+
for (UserStatusCallback userStatusCallback : userStatusCallbacks) {
227+
userStatusCallback.onAttention(timestampBegin, timestampEnd, attentionScore);
260228
}
261229
}
262230

263231
@Override
264-
public void onBlink(boolean isBlinkLeft, boolean isBlinkRight, boolean isBlink, float eyeOpenness) {
265-
for (GazeStatusCallback gazeStatusCallback : gazeStatusCallbacks) {
266-
gazeStatusCallback.onBlink(isBlinkLeft, isBlinkRight, isBlink, eyeOpenness);
232+
public void onBlink(long timestamp, boolean isBlinkLeft, boolean isBlinkRight, boolean isBlink, float eyeOpenness) {
233+
for (UserStatusCallback userStatusCallback : userStatusCallbacks) {
234+
userStatusCallback.onBlink(timestamp, isBlinkLeft, isBlinkRight, isBlink, eyeOpenness);
267235
}
268236
}
269237

270238
@Override
271-
public void onDrowsiness(boolean isDrowsiness) {
272-
for (GazeStatusCallback gazeStatusCallback : gazeStatusCallbacks) {
273-
gazeStatusCallback.onDrowsiness(isDrowsiness);
239+
public void onDrowsiness(long timestamp, boolean isDrowsiness) {
240+
for (UserStatusCallback userStatusCallback : userStatusCallbacks) {
241+
userStatusCallback.onDrowsiness(timestamp, isDrowsiness);
274242
}
275243
}
276244
};

0 commit comments

Comments
 (0)