diff --git a/Builds/Linux/Makefile b/Builds/Linux/Makefile index 45968bc55..fd77b1393 100644 --- a/Builds/Linux/Makefile +++ b/Builds/Linux/Makefile @@ -92,6 +92,7 @@ OBJECTS := \ $(OBJDIR)/SpikeDetector_300d85e7.o \ $(OBJDIR)/AudioNode_94606ff3.o \ $(OBJDIR)/EventNode_95c842b7.o \ + $(OBJDIR)/ReferenceNodeEditor_19ee0fac.o \ $(OBJDIR)/ResamplingNodeEditor_f2d6f061.o \ $(OBJDIR)/FPGAOutputEditor_cfe00f8a.o \ $(OBJDIR)/ArduinoOutputEditor_1118f008.o \ @@ -403,6 +404,11 @@ $(OBJDIR)/EventNode_95c842b7.o: ../../Source/Processors/EventNode.cpp @echo "Compiling EventNode.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" +$(OBJDIR)/ReferenceNodeEditor_19ee0fac.o: ../../Source/Processors/Editors/ReferenceNodeEditor.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling ReferenceNodeEditor.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + $(OBJDIR)/ResamplingNodeEditor_f2d6f061.o: ../../Source/Processors/Editors/ResamplingNodeEditor.cpp -@mkdir -p $(OBJDIR) @echo "Compiling ResamplingNodeEditor.cpp" diff --git a/Builds/MacOSX/open-ephys.xcodeproj/project.pbxproj b/Builds/MacOSX/open-ephys.xcodeproj/project.pbxproj index 2cda0e743..72fbc2d8d 100644 --- a/Builds/MacOSX/open-ephys.xcodeproj/project.pbxproj +++ b/Builds/MacOSX/open-ephys.xcodeproj/project.pbxproj @@ -66,6 +66,7 @@ 4BE0DDA01B73223EF0BD934A = { isa = PBXBuildFile; fileRef = 3DD0741FCFBC7563EC722D9B; }; 08B501E0D7764C6B613AF529 = { isa = PBXBuildFile; fileRef = B7750B27E4F3748ECCCCF69D; }; 9CBA3837CC8CAA03A03F2D9C = { isa = PBXBuildFile; fileRef = FA57CE4F63FF1592D6B3F9B5; }; + D54F398EBE746D5BCC86FB78 = { isa = PBXBuildFile; fileRef = 4D0B72C9F22FDB15C608CF20; }; 6F41ED502815AAF2F2EAB8B7 = { isa = PBXBuildFile; fileRef = EE3AAE8BD520868168064D38; }; 9C77BFFE7BA865E20121E707 = { isa = PBXBuildFile; fileRef = 7738196148E539781B237854; }; BA64AA28A3E0DC10AB0A9380 = { isa = PBXBuildFile; fileRef = DAFD5D2E1F875321584C7147; }; @@ -293,6 +294,8 @@ 12866D44BE115E8837468F48 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioNode.h; path = ../../Source/Processors/AudioNode.h; sourceTree = SOURCE_ROOT; }; FA57CE4F63FF1592D6B3F9B5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = EventNode.cpp; path = ../../Source/Processors/EventNode.cpp; sourceTree = SOURCE_ROOT; }; 32163C956C8A6F5C1DD7FE7F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = EventNode.h; path = ../../Source/Processors/EventNode.h; sourceTree = SOURCE_ROOT; }; + 4D0B72C9F22FDB15C608CF20 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ReferenceNodeEditor.cpp; path = ../../Source/Processors/Editors/ReferenceNodeEditor.cpp; sourceTree = SOURCE_ROOT; }; + E545022A6355CD2E92DE67C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ReferenceNodeEditor.h; path = ../../Source/Processors/Editors/ReferenceNodeEditor.h; sourceTree = SOURCE_ROOT; }; EE3AAE8BD520868168064D38 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ResamplingNodeEditor.cpp; path = ../../Source/Processors/Editors/ResamplingNodeEditor.cpp; sourceTree = SOURCE_ROOT; }; E177F2FF11601F6E11498390 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ResamplingNodeEditor.h; path = ../../Source/Processors/Editors/ResamplingNodeEditor.h; sourceTree = SOURCE_ROOT; }; 7738196148E539781B237854 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = FPGAOutputEditor.cpp; path = ../../Source/Processors/Editors/FPGAOutputEditor.cpp; sourceTree = SOURCE_ROOT; }; @@ -543,6 +546,8 @@ 0C5335B0E57C9DC92FC57E5F, 7738F51AE0EC63D76EE0F761 ); name = Visualization; sourceTree = ""; }; 953CC35B9116404D6AA8D1C7 = { isa = PBXGroup; children = ( + 4D0B72C9F22FDB15C608CF20, + E545022A6355CD2E92DE67C5, EE3AAE8BD520868168064D38, E177F2FF11601F6E11498390, 7738196148E539781B237854, @@ -830,6 +835,7 @@ 4BE0DDA01B73223EF0BD934A, 08B501E0D7764C6B613AF529, 9CBA3837CC8CAA03A03F2D9C, + D54F398EBE746D5BCC86FB78, 6F41ED502815AAF2F2EAB8B7, 9C77BFFE7BA865E20121E707, BA64AA28A3E0DC10AB0A9380, diff --git a/Builds/VisualStudio2010/open-ephys.vcxproj b/Builds/VisualStudio2010/open-ephys.vcxproj index d4da6ae92..8dc24bde7 100644 --- a/Builds/VisualStudio2010/open-ephys.vcxproj +++ b/Builds/VisualStudio2010/open-ephys.vcxproj @@ -171,6 +171,7 @@ + @@ -281,6 +282,7 @@ + diff --git a/Builds/VisualStudio2010/open-ephys.vcxproj.filters b/Builds/VisualStudio2010/open-ephys.vcxproj.filters index 2ef789be1..e62be6aff 100644 --- a/Builds/VisualStudio2010/open-ephys.vcxproj.filters +++ b/Builds/VisualStudio2010/open-ephys.vcxproj.filters @@ -382,6 +382,9 @@ open-ephys\Source\Processors + + open-ephys\Source\Processors\Editors + open-ephys\Source\Processors\Editors @@ -708,6 +711,9 @@ open-ephys\Source\Processors + + open-ephys\Source\Processors\Editors + open-ephys\Source\Processors\Editors diff --git a/Source/Processors/Editors/ReferenceNodeEditor.cpp b/Source/Processors/Editors/ReferenceNodeEditor.cpp new file mode 100644 index 000000000..2ec51b2a5 --- /dev/null +++ b/Source/Processors/Editors/ReferenceNodeEditor.cpp @@ -0,0 +1,48 @@ +/* + ------------------------------------------------------------------ + + This file is part of the Open Ephys GUI + Copyright (C) 2012 Open Ephys + + ------------------------------------------------------------------ + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +*/ + + +#include "ReferenceNodeEditor.h" +#include "../ReferenceNode.h" +#include + + +ReferenceNodeEditor::ReferenceNodeEditor (GenericProcessor* parentNode) + : GenericEditor(parentNode) + +{ + desiredWidth = 180; + + +} + +ReferenceNodeEditor::~ReferenceNodeEditor() +{ + deleteAllChildren(); +} + +void ReferenceNodeEditor::buttonEvent (Button* button) +{ + + +} \ No newline at end of file diff --git a/Source/Processors/Editors/ReferenceNodeEditor.h b/Source/Processors/Editors/ReferenceNodeEditor.h new file mode 100644 index 000000000..bb740c12f --- /dev/null +++ b/Source/Processors/Editors/ReferenceNodeEditor.h @@ -0,0 +1,50 @@ +/* + ------------------------------------------------------------------ + + This file is part of the Open Ephys GUI + Copyright (C) 2012 Open Ephys + + ------------------------------------------------------------------ + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +*/ + +#ifndef __REFERENCENODEEDITOR_H_370C056D__ +#define __REFERENCENODEEDITOR_H_370C056D__ + +#ifdef WIN32 +#include +#endif +#include "../../../JuceLibraryCode/JuceHeader.h" +#include "GenericEditor.h" + +class ReferenceNodeEditor : public GenericEditor +{ +public: + ReferenceNodeEditor (GenericProcessor* parentNode); + virtual ~ReferenceNodeEditor(); + void buttonEvent(Button* button); + +private: + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ReferenceNodeEditor); + +}; + + + + + +#endif // __REFERENCENODEEDITOR_H_370C056D__ diff --git a/Source/Processors/ReferenceNode.cpp b/Source/Processors/ReferenceNode.cpp index 2fa5d7cd5..52c152d8b 100644 --- a/Source/Processors/ReferenceNode.cpp +++ b/Source/Processors/ReferenceNode.cpp @@ -1,10 +1,75 @@ /* - ============================================================================== + ------------------------------------------------------------------ - ReferenceNode.cpp - Created: 26 Nov 2012 2:50:52pm - Author: jsiegle + This file is part of the Open Ephys GUI + Copyright (C) 2012 Open Ephys + + ------------------------------------------------------------------ + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . - ============================================================================== */ +#include +#include "ReferenceNode.h" +#include "Editors/ReferenceNodeEditor.h" + + + +ReferenceNode::ReferenceNode() + : GenericProcessor("Digital Reference") + +{ + + +} + +ReferenceNode::~ReferenceNode() +{ + +} + +AudioProcessorEditor* ReferenceNode::createEditor() +{ + editor = new ReferenceNodeEditor(this); + + std::cout << "Creating editor." << std::endl; + + return editor; +} + + + +void ReferenceNode::updateSettings() +{ + + + +} + +void ReferenceNode::setParameter (int parameterIndex, float newValue) +{ + + + +} + +void ReferenceNode::process(AudioSampleBuffer &buffer, + MidiBuffer &midiMessages, + int& nSamples) +{ + + +} + diff --git a/Source/Processors/ReferenceNode.h b/Source/Processors/ReferenceNode.h index e5b1a133e..1b8f13e37 100644 --- a/Source/Processors/ReferenceNode.h +++ b/Source/Processors/ReferenceNode.h @@ -1,18 +1,68 @@ /* - ============================================================================== + ------------------------------------------------------------------ - ReferenceNode.h - Created: 26 Nov 2012 2:50:52pm - Author: jsiegle + This file is part of the Open Ephys GUI + Copyright (C) 2012 Open Ephys + + ------------------------------------------------------------------ + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . - ============================================================================== */ #ifndef __REFERENCENODE_H_786EA929__ #define __REFERENCENODE_H_786EA929__ +#ifdef WIN32 +#include +#endif +#include "../../JuceLibraryCode/JuceHeader.h" + +#include "GenericProcessor.h" + + +/** + + Digital reference node + + @see GenericProcessor + +*/ + +class ReferenceNode : public GenericProcessor + +{ +public: + + ReferenceNode(); + ~ReferenceNode(); + + void process (AudioSampleBuffer &buffer, MidiBuffer &midiMessages, int& nSamples); + void setParameter (int parameterIndex, float newValue); + + AudioProcessorEditor* createEditor(); + + bool hasEditor() const {return true;} + + void updateSettings(); + +private: + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ReferenceNode); +}; #endif // __REFERENCENODE_H_786EA929__ diff --git a/open-ephys.jucer b/open-ephys.jucer index 9328c3492..ce5989a4c 100644 --- a/open-ephys.jucer +++ b/open-ephys.jucer @@ -288,6 +288,10 @@ + +