2020-05-25 22:46:44 +03:00
|
|
|
<template>
|
2020-06-26 04:39:14 -07:00
|
|
|
<div>
|
|
|
|
|
<v-row align="center">
|
|
|
|
|
<v-col
|
2020-07-13 19:34:31 -07:00
|
|
|
cols="10"
|
|
|
|
|
md="5"
|
|
|
|
|
lg="10"
|
|
|
|
|
class="pt-0 pb-0 pl-6"
|
2020-06-26 04:39:14 -07:00
|
|
|
>
|
2020-07-13 19:34:31 -07:00
|
|
|
<CVselect
|
|
|
|
|
v-if="isCameraNameEdit === false"
|
|
|
|
|
v-model="currentCameraIndex"
|
|
|
|
|
name="Camera"
|
|
|
|
|
:list="$store.getters.cameraList"
|
|
|
|
|
@input="handleInput('currentCamera',currentCameraIndex)"
|
|
|
|
|
/>
|
|
|
|
|
<CVinput
|
|
|
|
|
v-else
|
|
|
|
|
v-model="newCameraName"
|
|
|
|
|
name="Camera"
|
2020-07-31 13:50:50 -07:00
|
|
|
input-cols="9"
|
2020-07-13 19:34:31 -07:00
|
|
|
:error-message="checkCameraName"
|
|
|
|
|
@Enter="saveCameraNameChange"
|
|
|
|
|
/>
|
2020-06-26 04:39:14 -07:00
|
|
|
</v-col>
|
2020-07-13 19:34:31 -07:00
|
|
|
<v-col
|
|
|
|
|
cols="2"
|
|
|
|
|
md="1"
|
|
|
|
|
lg="2"
|
|
|
|
|
>
|
2020-06-26 04:39:14 -07:00
|
|
|
<CVicon
|
|
|
|
|
v-if="isCameraNameEdit === false"
|
|
|
|
|
color="#c5c5c5"
|
|
|
|
|
:hover="true"
|
|
|
|
|
text="edit"
|
|
|
|
|
tooltip="Edit camera name"
|
|
|
|
|
@click="toCameraNameChange"
|
|
|
|
|
/>
|
|
|
|
|
<div v-else>
|
|
|
|
|
<CVicon
|
|
|
|
|
color="#c5c5c5"
|
|
|
|
|
style="display: inline-block;"
|
|
|
|
|
:hover="true"
|
|
|
|
|
text="save"
|
|
|
|
|
tooltip="Save Camera Name"
|
|
|
|
|
@click="saveCameraNameChange"
|
|
|
|
|
/>
|
|
|
|
|
<CVicon
|
|
|
|
|
color="error"
|
|
|
|
|
style="display: inline-block;"
|
|
|
|
|
:hover="true"
|
|
|
|
|
text="close"
|
|
|
|
|
tooltip="Discard Changes"
|
|
|
|
|
@click="discardCameraNameChange"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
</v-col>
|
|
|
|
|
<v-col
|
2020-07-13 19:34:31 -07:00
|
|
|
cols="10"
|
|
|
|
|
md="5"
|
|
|
|
|
lg="10"
|
|
|
|
|
class="pt-0 pb-0 pl-6"
|
2020-06-26 04:39:14 -07:00
|
|
|
>
|
|
|
|
|
<CVselect
|
|
|
|
|
v-model="currentPipelineIndex"
|
|
|
|
|
name="Pipeline"
|
2020-07-31 13:50:50 -07:00
|
|
|
tooltip="Each pipeline runs on a camera output and stores a unique set of processing settings"
|
|
|
|
|
:disabled="$store.getters.isDriverMode"
|
|
|
|
|
:list="($store.getters.isDriverMode ? ['Driver Mode'] : []).concat($store.getters.pipelineList)"
|
|
|
|
|
@input="handleInputWithIndex('currentPipeline', currentPipelineIndex)"
|
2020-06-26 04:39:14 -07:00
|
|
|
/>
|
|
|
|
|
</v-col>
|
|
|
|
|
<v-col
|
2020-07-13 19:34:31 -07:00
|
|
|
cols="2"
|
|
|
|
|
md="1"
|
|
|
|
|
lg="2"
|
2020-06-26 04:39:14 -07:00
|
|
|
>
|
|
|
|
|
<v-menu
|
|
|
|
|
offset-y
|
|
|
|
|
auto
|
|
|
|
|
>
|
|
|
|
|
<template v-slot:activator="{ on }">
|
|
|
|
|
<v-icon
|
2020-06-28 16:01:17 -04:00
|
|
|
color="#c5c5c5"
|
2020-06-26 04:39:14 -07:00
|
|
|
v-on="on"
|
|
|
|
|
>
|
|
|
|
|
menu
|
|
|
|
|
</v-icon>
|
|
|
|
|
</template>
|
|
|
|
|
<v-list dense>
|
|
|
|
|
<v-list-item @click="toPipelineNameChange">
|
|
|
|
|
<v-list-item-title>
|
|
|
|
|
<CVicon
|
|
|
|
|
color="#c5c5c5"
|
|
|
|
|
:right="true"
|
|
|
|
|
text="edit"
|
|
|
|
|
tooltip="Edit pipeline name"
|
|
|
|
|
/>
|
|
|
|
|
</v-list-item-title>
|
|
|
|
|
</v-list-item>
|
|
|
|
|
<v-list-item @click="toCreatePipeline">
|
|
|
|
|
<v-list-item-title>
|
|
|
|
|
<CVicon
|
|
|
|
|
color="#c5c5c5"
|
|
|
|
|
:right="true"
|
|
|
|
|
text="add"
|
|
|
|
|
tooltip="Add new pipeline"
|
|
|
|
|
/>
|
|
|
|
|
</v-list-item-title>
|
|
|
|
|
</v-list-item>
|
|
|
|
|
<v-list-item @click="deleteCurrentPipeline">
|
|
|
|
|
<v-list-item-title>
|
|
|
|
|
<CVicon
|
|
|
|
|
color="red darken-2"
|
|
|
|
|
:right="true"
|
|
|
|
|
text="delete"
|
|
|
|
|
tooltip="Delete pipeline"
|
|
|
|
|
/>
|
|
|
|
|
</v-list-item-title>
|
|
|
|
|
</v-list-item>
|
|
|
|
|
<v-list-item @click="openDuplicateDialog">
|
|
|
|
|
<v-list-item-title>
|
|
|
|
|
<CVicon
|
|
|
|
|
color="#c5c5c5"
|
|
|
|
|
:right="true"
|
|
|
|
|
text="mdi-content-copy"
|
|
|
|
|
tooltip="Duplicate pipeline"
|
|
|
|
|
/>
|
|
|
|
|
</v-list-item-title>
|
|
|
|
|
</v-list-item>
|
|
|
|
|
</v-list>
|
|
|
|
|
</v-menu>
|
|
|
|
|
</v-col>
|
|
|
|
|
</v-row>
|
|
|
|
|
<!--pipeline duplicate dialog-->
|
|
|
|
|
<v-dialog
|
|
|
|
|
v-model="duplicateDialog"
|
|
|
|
|
dark
|
|
|
|
|
width="500"
|
|
|
|
|
height="357"
|
|
|
|
|
>
|
|
|
|
|
<v-card dark>
|
|
|
|
|
<v-card-title
|
|
|
|
|
class="headline"
|
|
|
|
|
primary-title
|
|
|
|
|
>
|
|
|
|
|
Duplicate Pipeline
|
|
|
|
|
</v-card-title>
|
|
|
|
|
<v-card-text>
|
|
|
|
|
<CVselect
|
|
|
|
|
v-model="pipelineDuplicate.pipeline"
|
|
|
|
|
name="Pipeline"
|
|
|
|
|
:list="$store.getters.pipelineList"
|
|
|
|
|
/>
|
|
|
|
|
<v-checkbox
|
|
|
|
|
v-if="$store.getters.cameraList.length > 1"
|
|
|
|
|
v-model="anotherCamera"
|
|
|
|
|
dark
|
|
|
|
|
:label="'To another camera'"
|
|
|
|
|
/>
|
|
|
|
|
<CVselect
|
|
|
|
|
v-if="anotherCamera === true"
|
|
|
|
|
v-model="pipelineDuplicate.camera"
|
|
|
|
|
name="Camera"
|
|
|
|
|
:list="$store.getters.cameraList"
|
|
|
|
|
/>
|
|
|
|
|
</v-card-text>
|
|
|
|
|
<v-divider />
|
|
|
|
|
<v-card-actions>
|
|
|
|
|
<v-spacer />
|
|
|
|
|
<v-btn
|
2020-06-28 03:11:09 -07:00
|
|
|
color="#ffd843"
|
2020-06-26 04:39:14 -07:00
|
|
|
@click="duplicatePipeline"
|
|
|
|
|
>
|
|
|
|
|
Duplicate
|
|
|
|
|
</v-btn>
|
|
|
|
|
<v-btn
|
|
|
|
|
color="error"
|
|
|
|
|
@click="closeDuplicateDialog"
|
|
|
|
|
>
|
|
|
|
|
Cancel
|
|
|
|
|
</v-btn>
|
|
|
|
|
</v-card-actions>
|
|
|
|
|
</v-card>
|
|
|
|
|
</v-dialog>
|
|
|
|
|
<!--pipeline naming dialog-->
|
|
|
|
|
<v-dialog
|
|
|
|
|
v-model="namingDialog"
|
|
|
|
|
dark
|
|
|
|
|
width="500"
|
|
|
|
|
height="357"
|
|
|
|
|
>
|
|
|
|
|
<v-card dark>
|
|
|
|
|
<v-card-title
|
|
|
|
|
class="headline"
|
|
|
|
|
primary-title
|
|
|
|
|
>
|
|
|
|
|
Pipeline Name
|
|
|
|
|
</v-card-title>
|
|
|
|
|
<v-card-text>
|
|
|
|
|
<CVinput
|
|
|
|
|
v-model="newPipelineName"
|
|
|
|
|
name="Pipeline"
|
|
|
|
|
:error-message="checkPipelineName"
|
|
|
|
|
@Enter="savePipelineNameChange"
|
|
|
|
|
/>
|
|
|
|
|
</v-card-text>
|
|
|
|
|
<v-divider />
|
|
|
|
|
<v-card-actions>
|
|
|
|
|
<v-spacer />
|
|
|
|
|
<v-btn
|
2020-06-28 03:11:09 -07:00
|
|
|
color="#ffd843"
|
2020-06-26 04:39:14 -07:00
|
|
|
:disabled="checkPipelineName !==''"
|
|
|
|
|
@click="savePipelineNameChange"
|
|
|
|
|
>
|
|
|
|
|
Save
|
|
|
|
|
</v-btn>
|
|
|
|
|
<v-btn
|
|
|
|
|
color="error"
|
|
|
|
|
@click="discardPipelineNameChange"
|
|
|
|
|
>
|
|
|
|
|
Cancel
|
|
|
|
|
</v-btn>
|
|
|
|
|
</v-card-actions>
|
|
|
|
|
</v-card>
|
|
|
|
|
</v-dialog>
|
|
|
|
|
</div>
|
2020-05-25 22:46:44 +03:00
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
import CVicon from '../common/cv-icon'
|
|
|
|
|
import CVselect from '../common/cv-select'
|
|
|
|
|
import CVinput from '../common/cv-input'
|
|
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
name: "CameraAndPipelineSelect",
|
|
|
|
|
components: {
|
|
|
|
|
CVicon,
|
|
|
|
|
CVselect,
|
|
|
|
|
CVinput
|
|
|
|
|
},
|
|
|
|
|
data: () => {
|
|
|
|
|
return {
|
|
|
|
|
re: RegExp("^[A-Za-z0-9 \\-)(]*[A-Za-z0-9][A-Za-z0-9 \\-)(.]*$"),
|
|
|
|
|
isCameraNameEdit: false,
|
|
|
|
|
newCameraName: "",
|
|
|
|
|
cameraNameError: "",
|
|
|
|
|
isPipelineNameEdit: false,
|
|
|
|
|
namingDialog: false,
|
|
|
|
|
newPipelineName: "",
|
|
|
|
|
duplicateDialog: false,
|
|
|
|
|
anotherCamera: false,
|
|
|
|
|
pipelineDuplicate: {
|
|
|
|
|
pipeline: undefined,
|
|
|
|
|
camera: -1
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
},
|
2020-06-26 04:39:14 -07:00
|
|
|
computed: {
|
|
|
|
|
checkCameraName() {
|
|
|
|
|
if (this.newCameraName !== this.$store.getters.cameraList[this.currentCameraIndex]) {
|
|
|
|
|
if (this.re.test(this.newCameraName)) {
|
|
|
|
|
for (let cam in this.cameraList) {
|
|
|
|
|
if (this.cameraList.hasOwnProperty(cam)) {
|
|
|
|
|
if (this.newCameraName === this.cameraList[cam]) {
|
2020-07-13 19:34:31 -07:00
|
|
|
return "A camera by that name already Exists"
|
2020-06-26 04:39:14 -07:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
2020-07-13 19:34:31 -07:00
|
|
|
return "A camera name can only contain letters, numbers and spaces"
|
2020-06-26 04:39:14 -07:00
|
|
|
}
|
|
|
|
|
}
|
2020-07-13 19:34:31 -07:00
|
|
|
return "";
|
2020-06-26 04:39:14 -07:00
|
|
|
},
|
|
|
|
|
checkPipelineName() {
|
|
|
|
|
if (this.newPipelineName !== this.$store.getters.pipelineList[this.currentPipelineIndex - 1] || this.isPipelineNameEdit === false) {
|
|
|
|
|
if (this.re.test(this.newPipelineName)) {
|
|
|
|
|
for (let pipe in this.$store.getters.pipelineList) {
|
|
|
|
|
if (this.$store.getters.pipelineList.hasOwnProperty(pipe)) {
|
|
|
|
|
if (this.newPipelineName === this.$store.getters.pipelineList[pipe]) {
|
|
|
|
|
return "A pipeline with this name already exists"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
2020-07-13 19:34:31 -07:00
|
|
|
return "A pipeline name can only contain letters, numbers, and spaces"
|
2020-06-26 04:39:14 -07:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return ""
|
|
|
|
|
},
|
|
|
|
|
currentCameraIndex: {
|
|
|
|
|
get() {
|
|
|
|
|
return this.$store.getters.currentCameraIndex;
|
|
|
|
|
},
|
|
|
|
|
set(value) {
|
Bootup sprint (#18)
* Did some stuff
* Fix gradle, start implementing mjpeg frame consumer
* Did some stuff
* bade changes
* rename camera config to USBCameraConfiguration, add name
* unrename cameraconfiguration
* Add pub/sub framework
* Add setResolution to mjpeg frame consumer
* add NTDataConsumer
* Add some totally broken hsv hacks
* Start refactoring UI data
* Update index.js
* Commit and push, he says
* Fix up some errors
* Fix input tab
* Fix fps
* Update index.js
* Add pipeline field setting, update PipelineManager, fix nullpointers and USBCameraSettables
* Change v-model to point to data()
* update hsv to use mutations
* Work on saving, fix hsv
* Rename shouldErode/shouldDilate to erode and dilate
* Hook all the tabs up to the Store
* Change handleData to handlePipelineData
* camera quirk redo, add ICCSub to SocketHandler
* Fix some property names
* Fixed tons of naming in UI, fix backend for multi-val PSCs, fix PSC enums
* change pipeline type to an int in store
* Fix mutation naming
* Attempt threshold fix
* Update SocketHandler.java
* Add truthy data sending
* Start adding logging support
* [UI] Add delay to slider input boxes (#1)
* [UI] [Backend] potentially fix camera settings, various logging tweaks
* Don't release raw input mat
* add setVideoModeIndex to vision settables
* Implement pipeline index in socket handler, add framework for renaming/changing pipes
* (ish) get pipeline change working
* Create index.html
* Cleanups, fix pipeline index bug, fix stream res for MJPG, add dashboard stream (unused)
* Refactor UI to use mutatePipeline, send pipeline results
* Update NetworkConfig.java
* Change double to number
* Run spotless
* Fix reversal of large/small comparators
* Fix left/right
* Fix pitch/yaw calculation bug, fix area bug
* Use Vue.set instead of assignment
This fixes {{ }}
* Update App.vue
* run spotless
* Actually add pipelines and reassign indecies
* Delete old pipeline configs
Fixes duplication on renaming pipeline
* Start working on deleting pipes
* Fix camera nickname change
* run spotless
* Fix some test stuff
* Update VisionModuleManagerTest.java
* vision source manager test is still broken
* Fix VisionSourceManager test
* Apply spotless 2 electric boogaloo
Co-authored-by: Banks Troutman <btrout.dhrs@gmail.com>
Co-authored-by: Declan Freeman-Gleason <declanfreemangleason@gmail.com>
Co-authored-by: Aaryan Agrawal <54345060+13Ducks@users.noreply.github.com>
2020-07-07 01:01:58 -07:00
|
|
|
this.$store.commit('currentCameraIndex', value);
|
2020-06-26 04:39:14 -07:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
currentPipelineIndex: {
|
|
|
|
|
get() {
|
2020-07-31 13:50:50 -07:00
|
|
|
return this.$store.getters.currentPipelineIndex + this.$store.getters.isDriverMode ? 1 : 0;
|
2020-06-26 04:39:14 -07:00
|
|
|
},
|
|
|
|
|
set(value) {
|
2020-07-31 13:50:50 -07:00
|
|
|
this.$store.commit('currentPipelineIndex', value - this.$store.getters.isDriverMode ? 1 : 0);
|
2020-06-26 04:39:14 -07:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
2020-05-25 22:46:44 +03:00
|
|
|
methods: {
|
|
|
|
|
toCameraNameChange() {
|
|
|
|
|
this.newCameraName = this.$store.getters.cameraList[this.currentCameraIndex];
|
|
|
|
|
this.isCameraNameEdit = true;
|
|
|
|
|
},
|
|
|
|
|
saveCameraNameChange() {
|
|
|
|
|
if (this.checkCameraName === "") {
|
Bootup sprint (#18)
* Did some stuff
* Fix gradle, start implementing mjpeg frame consumer
* Did some stuff
* bade changes
* rename camera config to USBCameraConfiguration, add name
* unrename cameraconfiguration
* Add pub/sub framework
* Add setResolution to mjpeg frame consumer
* add NTDataConsumer
* Add some totally broken hsv hacks
* Start refactoring UI data
* Update index.js
* Commit and push, he says
* Fix up some errors
* Fix input tab
* Fix fps
* Update index.js
* Add pipeline field setting, update PipelineManager, fix nullpointers and USBCameraSettables
* Change v-model to point to data()
* update hsv to use mutations
* Work on saving, fix hsv
* Rename shouldErode/shouldDilate to erode and dilate
* Hook all the tabs up to the Store
* Change handleData to handlePipelineData
* camera quirk redo, add ICCSub to SocketHandler
* Fix some property names
* Fixed tons of naming in UI, fix backend for multi-val PSCs, fix PSC enums
* change pipeline type to an int in store
* Fix mutation naming
* Attempt threshold fix
* Update SocketHandler.java
* Add truthy data sending
* Start adding logging support
* [UI] Add delay to slider input boxes (#1)
* [UI] [Backend] potentially fix camera settings, various logging tweaks
* Don't release raw input mat
* add setVideoModeIndex to vision settables
* Implement pipeline index in socket handler, add framework for renaming/changing pipes
* (ish) get pipeline change working
* Create index.html
* Cleanups, fix pipeline index bug, fix stream res for MJPG, add dashboard stream (unused)
* Refactor UI to use mutatePipeline, send pipeline results
* Update NetworkConfig.java
* Change double to number
* Run spotless
* Fix reversal of large/small comparators
* Fix left/right
* Fix pitch/yaw calculation bug, fix area bug
* Use Vue.set instead of assignment
This fixes {{ }}
* Update App.vue
* run spotless
* Actually add pipelines and reassign indecies
* Delete old pipeline configs
Fixes duplication on renaming pipeline
* Start working on deleting pipes
* Fix camera nickname change
* run spotless
* Fix some test stuff
* Update VisionModuleManagerTest.java
* vision source manager test is still broken
* Fix VisionSourceManager test
* Apply spotless 2 electric boogaloo
Co-authored-by: Banks Troutman <btrout.dhrs@gmail.com>
Co-authored-by: Declan Freeman-Gleason <declanfreemangleason@gmail.com>
Co-authored-by: Aaryan Agrawal <54345060+13Ducks@users.noreply.github.com>
2020-07-07 01:01:58 -07:00
|
|
|
this.handleInputWithIndex("changeCameraName", this.newCameraName);
|
2020-05-25 22:46:44 +03:00
|
|
|
this.discardCameraNameChange();
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
discardCameraNameChange() {
|
|
|
|
|
this.isCameraNameEdit = false;
|
|
|
|
|
this.newCameraName = "";
|
|
|
|
|
},
|
|
|
|
|
toPipelineNameChange() {
|
|
|
|
|
this.newPipelineName = this.$store.getters.pipelineList[this.currentPipelineIndex - 1];
|
|
|
|
|
this.isPipelineNameEdit = true;
|
|
|
|
|
this.namingDialog = true;
|
|
|
|
|
},
|
|
|
|
|
toCreatePipeline() {
|
|
|
|
|
this.newPipelineName = "New Pipeline";
|
|
|
|
|
this.isPipelineNameEdit = false;
|
|
|
|
|
this.namingDialog = true;
|
|
|
|
|
},
|
|
|
|
|
openDuplicateDialog() {
|
|
|
|
|
this.pipelineDuplicate = {
|
|
|
|
|
pipeline: this.currentPipelineIndex - 1,
|
|
|
|
|
camera: -1
|
|
|
|
|
};
|
|
|
|
|
this.duplicateDialog = true;
|
|
|
|
|
},
|
|
|
|
|
deleteCurrentPipeline() {
|
|
|
|
|
if (this.$store.getters.pipelineList.length > 1) {
|
Bootup sprint (#18)
* Did some stuff
* Fix gradle, start implementing mjpeg frame consumer
* Did some stuff
* bade changes
* rename camera config to USBCameraConfiguration, add name
* unrename cameraconfiguration
* Add pub/sub framework
* Add setResolution to mjpeg frame consumer
* add NTDataConsumer
* Add some totally broken hsv hacks
* Start refactoring UI data
* Update index.js
* Commit and push, he says
* Fix up some errors
* Fix input tab
* Fix fps
* Update index.js
* Add pipeline field setting, update PipelineManager, fix nullpointers and USBCameraSettables
* Change v-model to point to data()
* update hsv to use mutations
* Work on saving, fix hsv
* Rename shouldErode/shouldDilate to erode and dilate
* Hook all the tabs up to the Store
* Change handleData to handlePipelineData
* camera quirk redo, add ICCSub to SocketHandler
* Fix some property names
* Fixed tons of naming in UI, fix backend for multi-val PSCs, fix PSC enums
* change pipeline type to an int in store
* Fix mutation naming
* Attempt threshold fix
* Update SocketHandler.java
* Add truthy data sending
* Start adding logging support
* [UI] Add delay to slider input boxes (#1)
* [UI] [Backend] potentially fix camera settings, various logging tweaks
* Don't release raw input mat
* add setVideoModeIndex to vision settables
* Implement pipeline index in socket handler, add framework for renaming/changing pipes
* (ish) get pipeline change working
* Create index.html
* Cleanups, fix pipeline index bug, fix stream res for MJPG, add dashboard stream (unused)
* Refactor UI to use mutatePipeline, send pipeline results
* Update NetworkConfig.java
* Change double to number
* Run spotless
* Fix reversal of large/small comparators
* Fix left/right
* Fix pitch/yaw calculation bug, fix area bug
* Use Vue.set instead of assignment
This fixes {{ }}
* Update App.vue
* run spotless
* Actually add pipelines and reassign indecies
* Delete old pipeline configs
Fixes duplication on renaming pipeline
* Start working on deleting pipes
* Fix camera nickname change
* run spotless
* Fix some test stuff
* Update VisionModuleManagerTest.java
* vision source manager test is still broken
* Fix VisionSourceManager test
* Apply spotless 2 electric boogaloo
Co-authored-by: Banks Troutman <btrout.dhrs@gmail.com>
Co-authored-by: Declan Freeman-Gleason <declanfreemangleason@gmail.com>
Co-authored-by: Aaryan Agrawal <54345060+13Ducks@users.noreply.github.com>
2020-07-07 01:01:58 -07:00
|
|
|
this.handleInputWithIndex('command', 'deleteCurrentPipeline');
|
2020-05-25 22:46:44 +03:00
|
|
|
} else {
|
|
|
|
|
this.snackbar = true;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
savePipelineNameChange() {
|
|
|
|
|
if (this.checkPipelineName === "") {
|
|
|
|
|
if (this.isPipelineNameEdit) {
|
Bootup sprint (#18)
* Did some stuff
* Fix gradle, start implementing mjpeg frame consumer
* Did some stuff
* bade changes
* rename camera config to USBCameraConfiguration, add name
* unrename cameraconfiguration
* Add pub/sub framework
* Add setResolution to mjpeg frame consumer
* add NTDataConsumer
* Add some totally broken hsv hacks
* Start refactoring UI data
* Update index.js
* Commit and push, he says
* Fix up some errors
* Fix input tab
* Fix fps
* Update index.js
* Add pipeline field setting, update PipelineManager, fix nullpointers and USBCameraSettables
* Change v-model to point to data()
* update hsv to use mutations
* Work on saving, fix hsv
* Rename shouldErode/shouldDilate to erode and dilate
* Hook all the tabs up to the Store
* Change handleData to handlePipelineData
* camera quirk redo, add ICCSub to SocketHandler
* Fix some property names
* Fixed tons of naming in UI, fix backend for multi-val PSCs, fix PSC enums
* change pipeline type to an int in store
* Fix mutation naming
* Attempt threshold fix
* Update SocketHandler.java
* Add truthy data sending
* Start adding logging support
* [UI] Add delay to slider input boxes (#1)
* [UI] [Backend] potentially fix camera settings, various logging tweaks
* Don't release raw input mat
* add setVideoModeIndex to vision settables
* Implement pipeline index in socket handler, add framework for renaming/changing pipes
* (ish) get pipeline change working
* Create index.html
* Cleanups, fix pipeline index bug, fix stream res for MJPG, add dashboard stream (unused)
* Refactor UI to use mutatePipeline, send pipeline results
* Update NetworkConfig.java
* Change double to number
* Run spotless
* Fix reversal of large/small comparators
* Fix left/right
* Fix pitch/yaw calculation bug, fix area bug
* Use Vue.set instead of assignment
This fixes {{ }}
* Update App.vue
* run spotless
* Actually add pipelines and reassign indecies
* Delete old pipeline configs
Fixes duplication on renaming pipeline
* Start working on deleting pipes
* Fix camera nickname change
* run spotless
* Fix some test stuff
* Update VisionModuleManagerTest.java
* vision source manager test is still broken
* Fix VisionSourceManager test
* Apply spotless 2 electric boogaloo
Co-authored-by: Banks Troutman <btrout.dhrs@gmail.com>
Co-authored-by: Declan Freeman-Gleason <declanfreemangleason@gmail.com>
Co-authored-by: Aaryan Agrawal <54345060+13Ducks@users.noreply.github.com>
2020-07-07 01:01:58 -07:00
|
|
|
this.handleInputWithIndex("changePipelineName", this.newPipelineName);
|
2020-05-25 22:46:44 +03:00
|
|
|
} else {
|
Bootup sprint (#18)
* Did some stuff
* Fix gradle, start implementing mjpeg frame consumer
* Did some stuff
* bade changes
* rename camera config to USBCameraConfiguration, add name
* unrename cameraconfiguration
* Add pub/sub framework
* Add setResolution to mjpeg frame consumer
* add NTDataConsumer
* Add some totally broken hsv hacks
* Start refactoring UI data
* Update index.js
* Commit and push, he says
* Fix up some errors
* Fix input tab
* Fix fps
* Update index.js
* Add pipeline field setting, update PipelineManager, fix nullpointers and USBCameraSettables
* Change v-model to point to data()
* update hsv to use mutations
* Work on saving, fix hsv
* Rename shouldErode/shouldDilate to erode and dilate
* Hook all the tabs up to the Store
* Change handleData to handlePipelineData
* camera quirk redo, add ICCSub to SocketHandler
* Fix some property names
* Fixed tons of naming in UI, fix backend for multi-val PSCs, fix PSC enums
* change pipeline type to an int in store
* Fix mutation naming
* Attempt threshold fix
* Update SocketHandler.java
* Add truthy data sending
* Start adding logging support
* [UI] Add delay to slider input boxes (#1)
* [UI] [Backend] potentially fix camera settings, various logging tweaks
* Don't release raw input mat
* add setVideoModeIndex to vision settables
* Implement pipeline index in socket handler, add framework for renaming/changing pipes
* (ish) get pipeline change working
* Create index.html
* Cleanups, fix pipeline index bug, fix stream res for MJPG, add dashboard stream (unused)
* Refactor UI to use mutatePipeline, send pipeline results
* Update NetworkConfig.java
* Change double to number
* Run spotless
* Fix reversal of large/small comparators
* Fix left/right
* Fix pitch/yaw calculation bug, fix area bug
* Use Vue.set instead of assignment
This fixes {{ }}
* Update App.vue
* run spotless
* Actually add pipelines and reassign indecies
* Delete old pipeline configs
Fixes duplication on renaming pipeline
* Start working on deleting pipes
* Fix camera nickname change
* run spotless
* Fix some test stuff
* Update VisionModuleManagerTest.java
* vision source manager test is still broken
* Fix VisionSourceManager test
* Apply spotless 2 electric boogaloo
Co-authored-by: Banks Troutman <btrout.dhrs@gmail.com>
Co-authored-by: Declan Freeman-Gleason <declanfreemangleason@gmail.com>
Co-authored-by: Aaryan Agrawal <54345060+13Ducks@users.noreply.github.com>
2020-07-07 01:01:58 -07:00
|
|
|
this.handleInputWithIndex("addNewPipeline", this.newPipelineName);
|
2020-05-25 22:46:44 +03:00
|
|
|
}
|
|
|
|
|
this.discardPipelineNameChange();
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
duplicatePipeline() {
|
|
|
|
|
if (!this.anotherCamera) {
|
|
|
|
|
this.pipelineDuplicate.camera = -1
|
|
|
|
|
}
|
|
|
|
|
// this.handleInput("duplicatePipeline", this.pipelineDuplicate);
|
|
|
|
|
this.axios.post("http://" + this.$address + "/api/vision/duplicate", this.pipelineDuplicate);
|
|
|
|
|
this.closeDuplicateDialog();
|
|
|
|
|
},
|
|
|
|
|
closeDuplicateDialog() {
|
|
|
|
|
this.duplicateDialog = false;
|
|
|
|
|
this.pipelineDuplicate = {
|
|
|
|
|
pipeline: undefined,
|
|
|
|
|
camera: -1
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
discardPipelineNameChange() {
|
|
|
|
|
this.namingDialog = false;
|
|
|
|
|
this.isPipelineNameEdit = false;
|
|
|
|
|
this.newPipelineName = "";
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style scoped>
|
|
|
|
|
|
|
|
|
|
</style>
|