- compile clean for gcc

git-svn-id: http://moon:8086/svn/software/trunk/projects/mpsk_rx_gui@11 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
2014-07-19 13:02:37 +00:00
parent 00ecb0a6c1
commit 18b4fa3b5c
15 changed files with 143 additions and 113 deletions
+32 -8
View File
@@ -18,12 +18,12 @@ ifeq ($(CONFIG),Debug)
TARGET_ARCH := -march=native
endif
CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../JuceLibraryCode/modules
CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0
CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "radio_float_t=float" -D "fir_float_t=float" -D "JUCER_LINUX_MAKE_7346DA2A=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../JuceLibraryCode/modules -I ../../../../libsrc -I ../../Source
CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 -std=c++11
CXXFLAGS += $(CFLAGS)
LDFLAGS += $(TARGET_ARCH) -L$(BINDIR) -L$(LIBDIR) -L/usr/X11R6/lib/ -lGL -lX11 -lXext -lXinerama -lasound -ldl -lfreetype -lpthread -lrt
LDFLAGS += $(TARGET_ARCH) -L$(BINDIR) -L$(LIBDIR) -L/usr/X11R6/lib/ -L../../../../libsrc/radio/build/linux -L../../../../libsrc/fir/build/linux -L../../../../libsrc/crc/build/linux -lGL -lX11 -lXext -lXinerama -lasound -ldl -lfreetype -lpthread -lrt -lradio -lfir -lcrc
LDDEPS :=
RESFLAGS := -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../JuceLibraryCode/modules
RESFLAGS := -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "radio_float_t=float" -D "fir_float_t=float" -D "JUCER_LINUX_MAKE_7346DA2A=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../JuceLibraryCode/modules -I ../../../../libsrc -I ../../Source
TARGET := M-PSK\ Receiver
BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH)
CLEANCMD = rm -rf $(OUTDIR)/$(TARGET) $(OBJDIR)
@@ -39,18 +39,22 @@ ifeq ($(CONFIG),Release)
TARGET_ARCH := -march=native
endif
CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "NDEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../JuceLibraryCode/modules
CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -Os
CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "NDEBUG=1" -D "radio_float_t=float" -D "fir_float_t=float" -D "JUCER_LINUX_MAKE_7346DA2A=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../JuceLibraryCode/modules -I ../../../../libsrc -I ../../Source
CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -Os -std=c++11
CXXFLAGS += $(CFLAGS)
LDFLAGS += $(TARGET_ARCH) -L$(BINDIR) -L$(LIBDIR) -fvisibility=hidden -L/usr/X11R6/lib/ -lGL -lX11 -lXext -lXinerama -lasound -ldl -lfreetype -lpthread -lrt
LDFLAGS += $(TARGET_ARCH) -L$(BINDIR) -L$(LIBDIR) -fvisibility=hidden -L/usr/X11R6/lib/ -L../../../../libsrc/radio/build/linux -L../../../../libsrc/fir/build/linux -L../../../../libsrc/crc/build/linux -lGL -lX11 -lXext -lXinerama -lasound -ldl -lfreetype -lpthread -lrt -lradio -lfir -lcrc
LDDEPS :=
RESFLAGS := -D "LINUX=1" -D "NDEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../JuceLibraryCode/modules
RESFLAGS := -D "LINUX=1" -D "NDEBUG=1" -D "radio_float_t=float" -D "fir_float_t=float" -D "JUCER_LINUX_MAKE_7346DA2A=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../JuceLibraryCode/modules -I ../../../../libsrc -I ../../Source
TARGET := M-PSK\ Receiver
BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH)
CLEANCMD = rm -rf $(OUTDIR)/$(TARGET) $(OBJDIR)
endif
OBJECTS := \
$(OBJDIR)/GraphComponent_e41edf58.o \
$(OBJDIR)/LogComponent_246d8222.o \
$(OBJDIR)/Receiver_5b8294f8.o \
$(OBJDIR)/Transmitter_8ab42952.o \
$(OBJDIR)/ControlComponent_df0ca6a9.o \
$(OBJDIR)/IQPoint_361399c9.o \
$(OBJDIR)/IQPlaneComponent_22dd1f32.o \
@@ -88,6 +92,26 @@ strip:
@echo Stripping M-QAM Transceiver
-@strip --strip-unneeded $(OUTDIR)/$(TARGET)
$(OBJDIR)/GraphComponent_e41edf58.o: ../../Source/GraphComponent.cpp
-@mkdir -p $(OBJDIR)
@echo "Compiling GraphComponent.cpp"
@$(CXX) $(CXXFLAGS) -o "$@" -c "$<"
$(OBJDIR)/LogComponent_246d8222.o: ../../Source/LogComponent.cpp
-@mkdir -p $(OBJDIR)
@echo "Compiling LogComponent.cpp"
@$(CXX) $(CXXFLAGS) -o "$@" -c "$<"
$(OBJDIR)/Receiver_5b8294f8.o: ../../Source/Receiver.cpp
-@mkdir -p $(OBJDIR)
@echo "Compiling Receiver.cpp"
@$(CXX) $(CXXFLAGS) -o "$@" -c "$<"
$(OBJDIR)/Transmitter_8ab42952.o: ../../Source/Transmitter.cpp
-@mkdir -p $(OBJDIR)
@echo "Compiling Transmitter.cpp"
@$(CXX) $(CXXFLAGS) -o "$@" -c "$<"
$(OBJDIR)/ControlComponent_df0ca6a9.o: ../../Source/ControlComponent.cpp
-@mkdir -p $(OBJDIR)
@echo "Compiling ControlComponent.cpp"
+2 -2
View File
@@ -53,11 +53,11 @@
#endif
#ifndef JUCE_ALSA
//#define JUCE_ALSA
#define JUCE_ALSA 0
#endif
#ifndef JUCE_JACK
//#define JUCE_JACK
#define JUCE_JACK 1
#endif
#ifndef JUCE_USE_ANDROID_OPENSLES
@@ -53,8 +53,8 @@ namespace FloatVectorHelpers
static forcedinline ParallelType load1 (Type v) noexcept { return _mm_load1_ps (&v); }
static forcedinline ParallelType loadA (const Type* v) noexcept { return _mm_load_ps (v); }
static forcedinline ParallelType loadU (const Type* v) noexcept { return _mm_loadu_ps (v); }
static forcedinline void storeA (Type* dest, ParallelType a) noexcept { return _mm_store_ps (dest, a); }
static forcedinline void storeU (Type* dest, ParallelType a) noexcept { return _mm_storeu_ps (dest, a); }
static forcedinline void storeA (Type* dest, ParallelType a) noexcept { _mm_store_ps (dest, a); }
static forcedinline void storeU (Type* dest, ParallelType a) noexcept { _mm_storeu_ps (dest, a); }
static forcedinline ParallelType add (ParallelType a, ParallelType b) noexcept { return _mm_add_ps (a, b); }
static forcedinline ParallelType sub (ParallelType a, ParallelType b) noexcept { return _mm_sub_ps (a, b); }
@@ -75,8 +75,8 @@ namespace FloatVectorHelpers
static forcedinline ParallelType load1 (Type v) noexcept { return _mm_load1_pd (&v); }
static forcedinline ParallelType loadA (const Type* v) noexcept { return _mm_load_pd (v); }
static forcedinline ParallelType loadU (const Type* v) noexcept { return _mm_loadu_pd (v); }
static forcedinline void storeA (Type* dest, ParallelType a) noexcept { return _mm_store_pd (dest, a); }
static forcedinline void storeU (Type* dest, ParallelType a) noexcept { return _mm_storeu_pd (dest, a); }
static forcedinline void storeA (Type* dest, ParallelType a) noexcept { _mm_store_pd (dest, a); }
static forcedinline void storeU (Type* dest, ParallelType a) noexcept { _mm_storeu_pd (dest, a); }
static forcedinline ParallelType add (ParallelType a, ParallelType b) noexcept { return _mm_add_pd (a, b); }
static forcedinline ParallelType sub (ParallelType a, ParallelType b) noexcept { return _mm_sub_pd (a, b); }
@@ -134,8 +134,8 @@ namespace FloatVectorHelpers
static forcedinline ParallelType load1 (Type v) noexcept { return vld1q_dup_f32 (&v); }
static forcedinline ParallelType loadA (const Type* v) noexcept { return vld1q_f32 (v); }
static forcedinline ParallelType loadU (const Type* v) noexcept { return vld1q_f32 (v); }
static forcedinline void storeA (Type* dest, ParallelType a) noexcept { return vst1q_f32 (dest, a); }
static forcedinline void storeU (Type* dest, ParallelType a) noexcept { return vst1q_f32 (dest, a); }
static forcedinline void storeA (Type* dest, ParallelType a) noexcept { vst1q_f32 (dest, a); }
static forcedinline void storeU (Type* dest, ParallelType a) noexcept { vst1q_f32 (dest, a); }
static forcedinline ParallelType add (ParallelType a, ParallelType b) noexcept { return vaddq_f32 (a, b); }
static forcedinline ParallelType sub (ParallelType a, ParallelType b) noexcept { return vsubq_f32 (a, b); }
@@ -156,8 +156,8 @@ namespace FloatVectorHelpers
static forcedinline ParallelType load1 (Type v) noexcept { return v; }
static forcedinline ParallelType loadA (const Type* v) noexcept { return *v; }
static forcedinline ParallelType loadU (const Type* v) noexcept { return *v; }
static forcedinline void storeA (Type* dest, ParallelType a) noexcept { return *dest = a; }
static forcedinline void storeU (Type* dest, ParallelType a) noexcept { return *dest = a; }
static forcedinline void storeA (Type* dest, ParallelType a) noexcept { *dest = a; }
static forcedinline void storeU (Type* dest, ParallelType a) noexcept { *dest = a; }
static forcedinline ParallelType add (ParallelType a, ParallelType b) noexcept { return a + b; }
static forcedinline ParallelType sub (ParallelType a, ParallelType b) noexcept { return a - b; }
@@ -549,9 +549,9 @@ void FloatVectorOperations::negate (double* dest, const double* src, int num) no
void JUCE_CALLTYPE FloatVectorOperations::convertFixedToFloat (float* dest, const int* src, float multiplier, int num) noexcept
{
#if JUCE_USE_ARM_NEON
JUCE_PERFORM_NEON_OP_SRC_DEST (dest[i] = src[i] * multiplier,
vmulq_n_f32 (vcvtq_f32_s32 (vld1q_s32 (src)), multiplier),
JUCE_LOAD_NONE)
JUCE_PERFORM_VEC_OP_SRC_DEST (dest[i] = src[i] * multiplier,
vmulq_n_f32 (vcvtq_f32_s32 (vld1q_s32 (src)), multiplier),
JUCE_LOAD_NONE, JUCE_INCREMENT_SRC_DEST, )
#else
JUCE_PERFORM_VEC_OP_SRC_DEST (dest[i] = src[i] * multiplier,
Mode::mul (mult, _mm_cvtepi32_ps (_mm_loadu_si128 ((const __m128i*) src))),
@@ -90,10 +90,10 @@ void Synthesiser::clearVoices()
voices.clear();
}
void Synthesiser::addVoice (SynthesiserVoice* const newVoice)
SynthesiserVoice* Synthesiser::addVoice (SynthesiserVoice* const newVoice)
{
const ScopedLock sl (lock);
voices.add (newVoice);
return voices.add (newVoice);
}
void Synthesiser::removeVoice (const int index)
@@ -108,10 +108,10 @@ void Synthesiser::clearSounds()
sounds.clear();
}
void Synthesiser::addSound (const SynthesiserSound::Ptr& newSound)
SynthesiserSound* Synthesiser::addSound (const SynthesiserSound::Ptr& newSound)
{
const ScopedLock sl (lock);
sounds.add (newSound);
return sounds.add (newSound);
}
void Synthesiser::removeSound (const int index)
@@ -294,7 +294,7 @@ public:
it later on when no longer needed. The caller should not retain a pointer to the
voice.
*/
void addVoice (SynthesiserVoice* newVoice);
SynthesiserVoice* addVoice (SynthesiserVoice* newVoice);
/** Deletes one of the voices. */
void removeVoice (int index);
@@ -311,10 +311,10 @@ public:
/** Adds a new sound to the synthesiser.
The object passed in is reference counted, so will be deleted when it is removed
from the synthesiser, and when no voices are still using it.
The object passed in is reference counted, so will be deleted when the
synthesiser and all voices are no longer using it.
*/
void addSound (const SynthesiserSound::Ptr& newSound);
SynthesiserSound* addSound (const SynthesiserSound::Ptr& newSound);
/** Removes and deletes one of the sounds. */
void removeSound (int index);
@@ -111,7 +111,6 @@ static void createPluginDescription (PluginDescription& description,
description.lastFileModTime = pluginFile.getLastModificationTime();
description.manufacturerName = company;
description.name = name;
description.descriptiveName = name;
description.pluginFormatName = "VST3";
description.numInputChannels = numInputs;
description.numOutputChannels = numOutputs;
@@ -30,8 +30,8 @@ LookAndFeel_V3::LookAndFeel_V3()
setColour (TextButton::buttonColourId, textButtonColour);
setColour (ComboBox::buttonColourId, textButtonColour);
setColour (TextEditor::outlineColourId, Colours::transparentBlack);
setColour (TabbedButtonBar::tabOutlineColourId, Colour (0x66000000));
setColour (TabbedComponent::outlineColourId, Colour (0x66000000));
setColour (TabbedButtonBar::tabOutlineColourId, Colour (0xff999999));
setColour (TabbedComponent::outlineColourId, Colour (0xff999999));
setColour (Slider::trackColourId, Colour (0xbbffffff));
setColour (Slider::thumbColourId, Colour (0xffddddff));
setColour (BubbleComponent::backgroundColourId, Colour (0xeeeeeedd));
@@ -145,6 +145,11 @@ public:
{
ScopedPointer<MessageManagerLock> mmLock;
const Rectangle<int> screenBounds (component.getTopLevelComponent()->getScreenBounds());
if (lastScreenBounds != screenBounds)
updateViewportSize (false);
const bool isUpdating = needsUpdate.compareAndSetBool (0, 1);
if (context.renderComponents && isUpdating)
@@ -156,8 +161,6 @@ public:
mmLock = new MessageManagerLock (this); // need to acquire this before locking the context.
if (! mmLock->lockWasGained())
return false;
updateViewportSize (false);
}
if (! context.makeActive())
@@ -216,19 +219,13 @@ public:
}
}
void checkViewportBounds()
{
const Rectangle<int> screenBounds (component.getTopLevelComponent()->getScreenBounds());
if (lastScreenBounds != screenBounds)
updateViewportSize (true);
}
void paintComponent()
{
// you mustn't set your own cached image object when attaching a GL context!
jassert (get (component) == this);
updateViewportSize (false);
if (! ensureFrameBufferSize())
return;
@@ -466,8 +463,7 @@ void OpenGLContext::NativeContext::renderCallback()
#endif
//==============================================================================
class OpenGLContext::Attachment : public ComponentMovementWatcher,
private Timer
class OpenGLContext::Attachment : public ComponentMovementWatcher
{
public:
Attachment (OpenGLContext& c, Component& comp)
@@ -568,14 +564,10 @@ private:
comp.setCachedComponentImage (newCachedImage);
newCachedImage->start(); // (must wait until this is attached before starting its thread)
newCachedImage->updateViewportSize (true);
startTimer (400);
}
void detach()
{
stopTimer();
Component& comp = *getComponent();
#if JUCE_MAC
@@ -588,12 +580,6 @@ private:
comp.setCachedComponentImage (nullptr);
context.nativeContext = nullptr;
}
void timerCallback() override
{
if (CachedImage* const cachedImage = CachedImage::get (*getComponent()))
cachedImage->checkViewportBounds();
}
};
//==============================================================================
+34 -20
View File
@@ -6,6 +6,17 @@
companyEmail="jens@jayfield.org">
<MAINGROUP id="qBtndB" name="M-QAM Transceiver">
<GROUP id="{17E40C0A-AFC5-1BD1-AD90-8289DE60E569}" name="Source">
<FILE id="uM1PwN" name="GraphComponent.cpp" compile="1" resource="0"
file="Source/GraphComponent.cpp"/>
<FILE id="HunI5I" name="GraphComponent.h" compile="0" resource="0"
file="Source/GraphComponent.h"/>
<FILE id="MVnZcj" name="LogComponent.cpp" compile="1" resource="0"
file="Source/LogComponent.cpp"/>
<FILE id="lJilg4" name="LogComponent.h" compile="0" resource="0" file="Source/LogComponent.h"/>
<FILE id="A3kS0C" name="Receiver.cpp" compile="1" resource="0" file="Source/Receiver.cpp"/>
<FILE id="M9NvVq" name="Receiver.h" compile="0" resource="0" file="Source/Receiver.h"/>
<FILE id="JJHigV" name="Transmitter.cpp" compile="1" resource="0" file="Source/Transmitter.cpp"/>
<FILE id="mjPZYK" name="Transmitter.h" compile="0" resource="0" file="Source/Transmitter.h"/>
<FILE id="D84rEv" name="ControlComponent.cpp" compile="1" resource="0"
file="Source/ControlComponent.cpp"/>
<FILE id="ZyF7uB" name="ControlComponent.h" compile="0" resource="0"
@@ -23,28 +34,31 @@
</GROUP>
</MAINGROUP>
<EXPORTFORMATS>
<LINUX_MAKE targetFolder="Builds/Linux">
<LINUX_MAKE targetFolder="Builds/Linux" externalLibraries="radio&#10;fir&#10;crc&#10;"
extraDefs="" extraCompilerFlags="-std=c++11&#10;">
<CONFIGURATIONS>
<CONFIGURATION name="Debug" libraryPath="/usr/X11R6/lib/" isDebug="1" optimisation="1"
targetName="M-PSK Receiver"/>
<CONFIGURATION name="Release" libraryPath="/usr/X11R6/lib/" isDebug="0" optimisation="2"
targetName="M-PSK Receiver"/>
<CONFIGURATION name="Debug" libraryPath="/usr/X11R6/lib/&#10;../../../../libsrc/radio/build/linux&#10;../../../../libsrc/fir/build/linux&#10;../../../../libsrc/crc/build/linux"
isDebug="1" optimisation="1" targetName="M-PSK Receiver" headerPath="../../../../libsrc&#10;../../Source"
defines="radio_float_t=float&#10;fir_float_t=float"/>
<CONFIGURATION name="Release" libraryPath="/usr/X11R6/lib/&#10;../../../../libsrc/radio/build/linux&#10;../../../../libsrc/fir/build/linux&#10;../../../../libsrc/crc/build/linux"
isDebug="0" optimisation="2" targetName="M-PSK Receiver" headerPath="../../../../libsrc&#10;../../Source"
defines="radio_float_t=float&#10;fir_float_t=float"/>
</CONFIGURATIONS>
<MODULEPATHS>
<MODULEPATH id="juce_audio_basics" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_core" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_audio_devices" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_gui_basics" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_events" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_audio_formats" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_data_structures" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_graphics" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_gui_extra" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_opengl" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_audio_utils" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_cryptography" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_video" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_audio_processors" path="../../../SDKs/JUCE-master/modules"/>
<MODULEPATH id="juce_audio_basics" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_core" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_audio_devices" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_gui_basics" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_events" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_audio_formats" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_data_structures" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_graphics" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_gui_extra" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_opengl" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_audio_utils" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_cryptography" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_video" path="/home/jens/JUCE/modules"/>
<MODULEPATH id="juce_audio_processors" path="/home/jens/JUCE/modules"/>
</MODULEPATHS>
</LINUX_MAKE>
</EXPORTFORMATS>
@@ -64,5 +78,5 @@
<MODULES id="juce_opengl" showAllCode="1" useLocalCopy="1"/>
<MODULES id="juce_video" showAllCode="1" useLocalCopy="1"/>
</MODULES>
<JUCEOPTIONS/>
<JUCEOPTIONS JUCE_ALSA="disabled" JUCE_JACK="enabled"/>
</JUCERPROJECT>
+2 -2
View File
@@ -2104,8 +2104,8 @@ BEGIN_JUCER_METADATA
virtualName="" explicitFocusOrder="0" pos="720 408 64 24" buttonText="Reset"
connectedEdges="0" needsCallback="1" radioGroupId="0"/>
<SLIDER name="CarrierPhaseSlider" id="b4edfd1dcd6a20c6" memberName="m_sliderCarrierPhase"
virtualName="" explicitFocusOrder="0" pos="568 480 150 24" min="-3.1415926535900001"
max="3.1415926535900001" int="0.001" style="RotaryVerticalDrag"
virtualName="" explicitFocusOrder="0" pos="568 480 150 24" min="-3.1415926535900000616"
max="3.1415926535900000616" int="0.0010000000000000000208" style="RotaryVerticalDrag"
textBoxPos="TextBoxLeft" textBoxEditable="1" textBoxWidth="80"
textBoxHeight="20" skewFactor="1"/>
<TEXTBUTTON name="CPR Reset button" id="42a7b272b9dba592" memberName="m_buttonResetCPR"
+1 -1
View File
@@ -21,7 +21,7 @@
#define __GRAPH_COMPONENT__
//[Headers] -- You can add your own extra header files here --
#include "JuceHeader.h"
#include <JuceHeader.h>
#include "Receiver.h"
//[/Headers]
+1 -1
View File
@@ -149,7 +149,7 @@ void IQPlaneComponent::pointAdd(sym_err_t *pPoint, uint32_t numPoints)
if (m_numPoints >= m_maxNumPoints)
return;
numFill = (uint32_t)__min(m_maxNumPoints-m_numPoints, numPoints);
numFill = (uint32_t)dmin(m_maxNumPoints-m_numPoints, numPoints);
for (i=0; i < numFill; i++)
{
m_pPointArray[m_numPoints++] = pPoint[i];
+11 -4
View File
@@ -1,9 +1,12 @@
#include <cmath>
#include "Receiver.h"
#include "MinMaxLemire.h"
#include "Frame.hpp"
#include <radio/Frame.hpp>
#if 0
#include <radio/ComplexVector.hpp>
#include <radio/RealVector.hpp>
#endif
/***************************************************************/
const uint32_t LPF_OVERSAMPLING = 32; // Arm-Filter: oversampling
@@ -161,6 +164,7 @@ void Receiver::initDefaultParams()
m_params.eqMuDfe = DFE_MU;
}
#if 0
void UpdateWeigths(ComplexVector &x, ComplexVector &e, ComplexVector &w, ComplexVector &w_conj, radio_float_t mu)
{
@@ -174,6 +178,7 @@ void UpdateWeigths(ComplexVector &x, ComplexVector &e, ComplexVector &w, Complex
w_conj.print("w*");
}
#endif
void Receiver::init()
{
@@ -364,7 +369,6 @@ void Receiver::init()
UnitFrameTransmitter tx(10, &rx);
tx.process();
#endif
//---------------------------
// ComplexVector
//---------------------------
@@ -820,6 +824,7 @@ void Receiver::init()
rv1.print("v1");
rv2.print("v2");
rv3.print("v3");
#endif
TraceOpen(&m_trace, "D:\\home\\jens\\Dokumente\\trace.txt");
@@ -1312,7 +1317,7 @@ cpx_t Receiver::processMatchedFilter(cpx_t x, int32_t m, radio_float_t mu)
return y;
}
int Receiver::Farrow_open_coeff(ppip_farrow_cpx_t *pObj, char *filename)
int Receiver::Farrow_open_coeff(ppip_farrow_cpx_t *pObj, const char *filename)
{
int i;
FILE *pFile;
@@ -1440,7 +1445,7 @@ void Receiver::initFilterRcf()
}
m_pFarrowInterpolator = new ppip_farrow_cpx_t();
Farrow_open_coeff(m_pFarrowInterpolator, "D:\\home\\jens\\work\\develope\\win32\\Projects\\radio\\farrow_coeff.dat");
Farrow_open_coeff(m_pFarrowInterpolator, "/home/jens/farrow_coeff.dat");
m_log.log("Farrow filter coefficients loaded (L=%d, M=%d, N=%d)", m_pFarrowInterpolator->L, m_pFarrowInterpolator->M, m_pFarrowInterpolator->N);
}
@@ -1502,6 +1507,8 @@ void Receiver::setSamplerate(float samplerate_hz)
const ScopedLock sl (m_lock);
m_params.samplerate = samplerate_hz;
m_params.symbolrate = samplerate_hz/4;
m_params.ddc_freq = samplerate_hz/4;
initDDC();
initFilterArm();
+28 -28
View File
@@ -9,10 +9,10 @@
#include <radio/statistics.h>
#include <radio/equalizer.h>
#include <radio/agc.h>
#include <radio/Frame.hpp>
#include "JuceHeader.h"
#include "Logcomponent.h"
#include "Frame.hpp"
#include "LogComponent.h"
// ---------------------------------------------------
#define NUM_PASSBAND_SAMPLES_PER_SYM 4
@@ -160,13 +160,13 @@ typedef struct _params_t
bool strAutoControlEnable;
bool cprAutoControlEnable;
bool agcAutoControlEnable;
str_mode str_mode;
cpr_mode cpr_mode;
agc_mode agc_mode;
eq_mode eq_mode;
cma_type cmaType;
cma_mode cmaMode;
dfe_mode dfeMode;
enum str_mode str_mode;
enum cpr_mode cpr_mode;
enum agc_mode agc_mode;
enum eq_mode eq_mode;
enum cma_type cmaType;
enum cma_mode cmaMode;
enum dfe_mode dfeMode;
lead_lag_coeff_t str_loopfilter_coeff[2];
uint32_t str_loopfilter_coeff_index;
lead_lag_coeff_t cpr_loopfilter_coeff[2];
@@ -177,9 +177,9 @@ typedef struct _params_t
float agcMu[2];
uint32_t agcMu_index;
str_state strState;
cpr_state cprState;
agc_state agc_state;
enum str_state strState;
enum cpr_state cprState;
enum agc_state agc_state;
} params_t;
@@ -292,7 +292,7 @@ private:
uint32_t m_numSymsInBuffer;
uint32_t m_bufsize;
bool m_ReceiverEnable;
clock_t m_symClock;
sample_clock_t m_symClock;
pfd_t m_pfdCpr;
cpx_t m_trackers_[4];
cpx_t m_trackers[4];
@@ -354,7 +354,7 @@ private:
void timerCallback();
void processBaseband(cpx_t *pIF, uint32_t len);
cpx_t processMatchedFilter(cpx_t x, int32_t m, radio_float_t mu);
int Farrow_open_coeff(ppip_farrow_cpx_t *pObj, char *filename);
int Farrow_open_coeff(ppip_farrow_cpx_t *pObj, const char *filename);
void minMaxInit(minmax_t *pObj, radio_float_t min_initial, radio_float_t max_initial)
{
pObj->min = min_initial;
@@ -402,19 +402,19 @@ private:
void initDDC();
// Interface
void Receiver::setSamplerate(float samplerate_hz) override;
void Receiver::setParams(const params_t &params) override;
params_t& Receiver::getParams() override;
status_t& Receiver::getStatus() override;
void Receiver::reset() override;
void Receiver::strReset() override;
void Receiver::cprReset() override;
void Receiver::dfeReset() override;
void Receiver::cmaReset() override;
void Receiver::statisticsReset() override;
void Receiver::dfeOffUpdateFromCma() override;
void Receiver::dfeOnUpdateFromDfeOff() override;
cpx_t& Receiver::getTracker(uint32 index) override;
void setSamplerate(float samplerate_hz) override;
void setParams(const params_t &params) override;
params_t& getParams() override;
status_t& getStatus() override;
void reset() override;
void strReset() override;
void cprReset() override;
void dfeReset() override;
void cmaReset() override;
void statisticsReset() override;
void dfeOffUpdateFromCma() override;
void dfeOnUpdateFromDfeOff() override;
cpx_t& getTracker(uint32 index) override;
void onData(void *pData, uint32_t size) override
{
@@ -447,4 +447,4 @@ private:
trace_t m_trace;
};
#endif // _RECEIVER_H_
#endif // _RECEIVER_H_
+3 -3
View File
@@ -5,10 +5,10 @@
#include <radio/symbol.h>
#include <radio/nco.h>
#include <radio/interpolation.h>
#include <radio/Frame.hpp>
#include "JuceHeader.h"
#include "Logcomponent.h"
#include "Frame.hpp"
#include "LogComponent.h"
#define TRANSMITTER_RCF_OVERSAMPLING ((uint32_t)32)
#define TRANSMITTER_RCF_ROLLOFF ((radio_float_t)0.35)
@@ -248,4 +248,4 @@ private:
}
};
#endif // _TRANSMITTER_H_
#endif // _TRANSMITTER_H_