Skip to content

Commit

Permalink
Code formatting, move some packages
Browse files Browse the repository at this point in the history
  • Loading branch information
Eirenliel committed Sep 18, 2021
1 parent 18cea30 commit 97bc934
Show file tree
Hide file tree
Showing 12 changed files with 759 additions and 769 deletions.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

579 changes: 294 additions & 285 deletions src/main/java/dev/slimevr/gui/AutoBoneWindow.java

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package dev.slimevr.vr.poserecorder;
package dev.slimevr.poserecorder;

import java.util.Iterator;
import java.util.List;
Expand All @@ -8,135 +8,135 @@
import io.eiren.vr.trackers.Tracker;

public final class PoseFrame implements Iterable<TrackerFrame[]> {

private final FastList<PoseFrameTracker> trackers;

public PoseFrame(FastList<PoseFrameTracker> trackers) {
this.trackers = trackers;
}

public PoseFrame(int initialCapacity) {
this.trackers = new FastList<PoseFrameTracker>(initialCapacity);
}

public PoseFrame() {
this(5);
}

public PoseFrameTracker addTracker(PoseFrameTracker tracker) {
trackers.add(tracker);
return tracker;
}

public PoseFrameTracker addTracker(Tracker tracker, int initialCapacity) {
return addTracker(new PoseFrameTracker(tracker.getName(), initialCapacity));
}

public PoseFrameTracker addTracker(Tracker tracker) {
return addTracker(tracker, 5);
}

public PoseFrameTracker removeTracker(int index) {
return trackers.remove(index);
}

public PoseFrameTracker removeTracker(PoseFrameTracker tracker) {
trackers.remove(tracker);
return tracker;
}

public void clearTrackers() {
trackers.clear();
}

public void fakeClearTrackers() {
trackers.fakeClear();
}

public int getTrackerCount() {
return trackers.size();
}

public List<PoseFrameTracker> getTrackers() {
return trackers;
}

public int getMaxFrameCount() {
int maxFrames = 0;

for (int i = 0; i < trackers.size(); i++) {
for(int i = 0; i < trackers.size(); i++) {
PoseFrameTracker tracker = trackers.get(i);
if (tracker != null && tracker.getFrameCount() > maxFrames) {
if(tracker != null && tracker.getFrameCount() > maxFrames) {
maxFrames = tracker.getFrameCount();
}
}

return maxFrames;
}

public int getFrames(int frameIndex, TrackerFrame[] buffer) {
for (int i = 0; i < trackers.size(); i++) {
for(int i = 0; i < trackers.size(); i++) {
PoseFrameTracker tracker = trackers.get(i);
buffer[i] = tracker != null ? tracker.safeGetFrame(frameIndex) : null;
}
return trackers.size();
}

public int getFrames(int frameIndex, List<TrackerFrame> buffer) {
for (int i = 0; i < trackers.size(); i++) {
for(int i = 0; i < trackers.size(); i++) {
PoseFrameTracker tracker = trackers.get(i);
buffer.add(i, tracker != null ? tracker.safeGetFrame(frameIndex) : null);
}
return trackers.size();
}

public TrackerFrame[] getFrames(int frameIndex) {
TrackerFrame[] trackerFrames = new TrackerFrame[trackers.size()];
getFrames(frameIndex, trackerFrames);
return trackerFrames;
}

@Override
public Iterator<TrackerFrame[]> iterator() {
return new PoseFrameIterator(this);
}

public class PoseFrameIterator implements Iterator<TrackerFrame[]> {

private final PoseFrame poseFrame;
private final TrackerFrame[] trackerFrameBuffer;

private int cursor = 0;

public PoseFrameIterator(PoseFrame poseFrame) {
this.poseFrame = poseFrame;
trackerFrameBuffer = new TrackerFrame[poseFrame.getTrackerCount()];
}

@Override
public boolean hasNext() {
if (trackers.isEmpty()) {
if(trackers.isEmpty()) {
return false;
}

for (int i = 0; i < trackers.size(); i++) {
for(int i = 0; i < trackers.size(); i++) {
PoseFrameTracker tracker = trackers.get(i);
if (tracker != null && cursor < tracker.getFrameCount()) {
if(tracker != null && cursor < tracker.getFrameCount()) {
return true;
}
}

return false;
}

@Override
public TrackerFrame[] next() {
if (!hasNext()) {
if(!hasNext()) {
throw new NoSuchElementException();
}

poseFrame.getFrames(cursor++, trackerFrameBuffer);

return trackerFrameBuffer;
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package dev.slimevr.vr.poserecorder;
package dev.slimevr.poserecorder;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
Expand All @@ -7,7 +7,6 @@
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.List;

import com.jme3.math.Quaternion;
import com.jme3.math.Vector3f;
Expand All @@ -17,41 +16,40 @@
import io.eiren.vr.processor.TrackerBodyPosition;

public final class PoseFrameIO {

private PoseFrameIO() {
// Do not allow instantiating
}

public static boolean writeFrames(DataOutputStream outputStream, PoseFrame frames) {
try {
if (frames != null) {

if(frames != null) {
outputStream.writeInt(frames.getTrackerCount());
for (PoseFrameTracker tracker : frames.getTrackers()) {

for(PoseFrameTracker tracker : frames.getTrackers()) {
outputStream.writeUTF(tracker.name);
outputStream.writeInt(tracker.getFrameCount());
for (int i = 0; i < tracker.getFrameCount(); i++) {
for(int i = 0; i < tracker.getFrameCount(); i++) {
TrackerFrame trackerFrame = tracker.safeGetFrame(i);
if (trackerFrame == null) {
if(trackerFrame == null) {
outputStream.writeInt(0);
continue;
}

outputStream.writeInt(trackerFrame.getDataFlags());

if (trackerFrame.hasData(TrackerFrameData.DESIGNATION)) {
if(trackerFrame.hasData(TrackerFrameData.DESIGNATION)) {
outputStream.writeUTF(trackerFrame.designation.designation);
}

if (trackerFrame.hasData(TrackerFrameData.ROTATION)) {
if(trackerFrame.hasData(TrackerFrameData.ROTATION)) {
outputStream.writeFloat(trackerFrame.rotation.getX());
outputStream.writeFloat(trackerFrame.rotation.getY());
outputStream.writeFloat(trackerFrame.rotation.getZ());
outputStream.writeFloat(trackerFrame.rotation.getW());
}

if (trackerFrame.hasData(TrackerFrameData.POSITION)) {
if(trackerFrame.hasData(TrackerFrameData.POSITION)) {
outputStream.writeFloat(trackerFrame.position.getX());
outputStream.writeFloat(trackerFrame.position.getY());
outputStream.writeFloat(trackerFrame.position.getZ());
Expand All @@ -61,81 +59,81 @@ public static boolean writeFrames(DataOutputStream outputStream, PoseFrame frame
} else {
outputStream.writeInt(0);
}
} catch (Exception e) {
} catch(Exception e) {
LogManager.log.severe("Error writing frame to stream", e);
return false;
}

return true;
}

public static boolean writeToFile(File file, PoseFrame frames) {
try (DataOutputStream outputStream = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file)))) {
try(DataOutputStream outputStream = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file)))) {
writeFrames(outputStream, frames);
} catch (Exception e) {
} catch(Exception e) {
LogManager.log.severe("Error writing frames to file", e);
return false;
}

return true;
}

public static PoseFrame readFrames(DataInputStream inputStream) {
try {

int trackerCount = inputStream.readInt();
FastList<PoseFrameTracker> trackers = new FastList<PoseFrameTracker>(trackerCount);
for (int i = 0; i < trackerCount; i++) {

for(int i = 0; i < trackerCount; i++) {
String name = inputStream.readUTF();
int trackerFrameCount = inputStream.readInt();
FastList<TrackerFrame> trackerFrames = new FastList<TrackerFrame>(trackerFrameCount);
for (int j = 0; j < trackerFrameCount; j++) {
for(int j = 0; j < trackerFrameCount; j++) {
int dataFlags = inputStream.readInt();

TrackerBodyPosition designation = null;
if (TrackerFrameData.DESIGNATION.check(dataFlags)) {
if(TrackerFrameData.DESIGNATION.check(dataFlags)) {
designation = TrackerBodyPosition.getByDesignation(inputStream.readUTF());
}

Quaternion rotation = null;
if (TrackerFrameData.ROTATION.check(dataFlags)) {
if(TrackerFrameData.ROTATION.check(dataFlags)) {
float quatX = inputStream.readFloat();
float quatY = inputStream.readFloat();
float quatZ = inputStream.readFloat();
float quatW = inputStream.readFloat();
rotation = new Quaternion(quatX, quatY, quatZ, quatW);
}

Vector3f position = null;
if (TrackerFrameData.POSITION.check(dataFlags)) {
if(TrackerFrameData.POSITION.check(dataFlags)) {
float posX = inputStream.readFloat();
float posY = inputStream.readFloat();
float posZ = inputStream.readFloat();
position = new Vector3f(posX, posY, posZ);
}

trackerFrames.add(new TrackerFrame(designation, rotation, position));
}

trackers.add(new PoseFrameTracker(name, trackerFrames));
}

return new PoseFrame(trackers);
} catch (Exception e) {
} catch(Exception e) {
LogManager.log.severe("Error reading frame from stream", e);
}

return null;
}

public static PoseFrame readFromFile(File file) {
try {
return readFrames(new DataInputStream(new BufferedInputStream(new FileInputStream(file))));
} catch (Exception e) {
} catch(Exception e) {
LogManager.log.severe("Error reading frame from file", e);
}

return null;
}
}
Loading

0 comments on commit 97bc934

Please sign in to comment.