summaryrefslogtreecommitdiff
path: root/gr-noaa/lib
diff options
context:
space:
mode:
Diffstat (limited to 'gr-noaa/lib')
-rw-r--r--gr-noaa/lib/CMakeLists.txt66
-rw-r--r--gr-noaa/lib/Makefile.am1
-rw-r--r--gr-noaa/lib/noaa_api.h33
-rw-r--r--gr-noaa/lib/noaa_hrpt_decoder.h7
-rw-r--r--gr-noaa/lib/noaa_hrpt_deframer.h7
-rw-r--r--gr-noaa/lib/noaa_hrpt_pll_cf.h7
6 files changed, 112 insertions, 9 deletions
diff --git a/gr-noaa/lib/CMakeLists.txt b/gr-noaa/lib/CMakeLists.txt
new file mode 100644
index 000000000..2388a450e
--- /dev/null
+++ b/gr-noaa/lib/CMakeLists.txt
@@ -0,0 +1,66 @@
+# Copyright 2011 Free Software Foundation, Inc.
+#
+# This file is part of GNU Radio
+#
+# GNU Radio 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, or (at your option)
+# any later version.
+#
+# GNU Radio 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 GNU Radio; see the file COPYING. If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+
+########################################################################
+# Setup the include and linker paths
+########################################################################
+INCLUDE_DIRECTORIES(
+ ${GNURADIO_CORE_INCLUDE_DIRS}
+ ${GR_NOAA_INCLUDE_DIRS}
+)
+
+INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS})
+LINK_DIRECTORIES(${Boost_LIBRARY_DIRS})
+
+########################################################################
+# Setup library
+########################################################################
+LIST(APPEND gr_noaa_sources
+ noaa_hrpt_decoder.cc
+ noaa_hrpt_deframer.cc
+ noaa_hrpt_pll_cf.cc
+)
+
+LIST(APPEND noaa_libs
+ gnuradio-core
+ ${Boost_LIBRARIES}
+)
+
+ADD_LIBRARY(gnuradio-noaa SHARED ${gr_noaa_sources})
+TARGET_LINK_LIBRARIES(gnuradio-noaa ${noaa_libs})
+SET_TARGET_PROPERTIES(gnuradio-noaa PROPERTIES DEFINE_SYMBOL "gnuradio_noaa_EXPORTS")
+SET_TARGET_PROPERTIES(gnuradio-noaa PROPERTIES SOVERSION ${LIBVER})
+
+INSTALL(TARGETS gnuradio-noaa
+ LIBRARY DESTINATION ${GR_LIBRARY_DIR} COMPONENT "noaa_runtime" # .so/.dylib file
+ ARCHIVE DESTINATION ${GR_LIBRARY_DIR} COMPONENT "noaa_devel" # .lib file
+ RUNTIME DESTINATION ${GR_RUNTIME_DIR} COMPONENT "noaa_runtime" # .dll file
+)
+
+########################################################################
+# Install header files
+########################################################################
+INSTALL(FILES
+ noaa_api.h
+ noaa_hrpt_decoder.h
+ noaa_hrpt_deframer.h
+ noaa_hrpt_pll_cf.h
+ DESTINATION ${GR_INCLUDE_DIR}/gnuradio
+ COMPONENT "noaa_devel"
+)
diff --git a/gr-noaa/lib/Makefile.am b/gr-noaa/lib/Makefile.am
index ba660a398..8eedbbb18 100644
--- a/gr-noaa/lib/Makefile.am
+++ b/gr-noaa/lib/Makefile.am
@@ -42,6 +42,7 @@ libgnuradio_noaa_la_LIBADD = \
libgnuradio_noaa_la_LDFLAGS = $(NO_UNDEFINED) $(LTVERSIONFLAGS)
grinclude_HEADERS = \
+ noaa_api.h \
noaa_hrpt_decoder.h \
noaa_hrpt_deframer.h \
noaa_hrpt_pll_cf.h
diff --git a/gr-noaa/lib/noaa_api.h b/gr-noaa/lib/noaa_api.h
new file mode 100644
index 000000000..d3c3fbf2d
--- /dev/null
+++ b/gr-noaa/lib/noaa_api.h
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2011 Free Software Foundation, Inc.
+ *
+ * This file is part of GNU Radio
+ *
+ * GNU Radio 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, or (at your option)
+ * any later version.
+ *
+ * GNU Radio 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 GNU Radio; see the file COPYING. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef INCLUDED_NOAA_API_H
+#define INCLUDED_NOAA_API_H
+
+#include <gruel/attributes.h>
+
+#ifdef gnuradio_noaa_EXPORTS
+# define NOAA_API __GR_ATTR_EXPORT
+#else
+# define NOAA_API __GR_ATTR_IMPORT
+#endif
+
+#endif /* INCLUDED_NOAA_API_H */
diff --git a/gr-noaa/lib/noaa_hrpt_decoder.h b/gr-noaa/lib/noaa_hrpt_decoder.h
index 9d67d7108..4db09106e 100644
--- a/gr-noaa/lib/noaa_hrpt_decoder.h
+++ b/gr-noaa/lib/noaa_hrpt_decoder.h
@@ -23,17 +23,18 @@
#ifndef INCLUDED_NOAA_HRPT_DECODER_H
#define INCLUDED_NOAA_HRPT_DECODER_H
+#include <noaa_api.h>
#include <gr_sync_block.h>
class noaa_hrpt_decoder;
typedef boost::shared_ptr<noaa_hrpt_decoder> noaa_hrpt_decoder_sptr;
-noaa_hrpt_decoder_sptr
+NOAA_API noaa_hrpt_decoder_sptr
noaa_make_hrpt_decoder(bool verbose, bool output_files);
-class noaa_hrpt_decoder : public gr_sync_block
+class NOAA_API noaa_hrpt_decoder : public gr_sync_block
{
- friend noaa_hrpt_decoder_sptr noaa_make_hrpt_decoder(bool verbose, bool output_files);
+ friend NOAA_API noaa_hrpt_decoder_sptr noaa_make_hrpt_decoder(bool verbose, bool output_files);
noaa_hrpt_decoder(bool verbose, bool output_files);
// Configuration
diff --git a/gr-noaa/lib/noaa_hrpt_deframer.h b/gr-noaa/lib/noaa_hrpt_deframer.h
index b11d0fa2b..d254746af 100644
--- a/gr-noaa/lib/noaa_hrpt_deframer.h
+++ b/gr-noaa/lib/noaa_hrpt_deframer.h
@@ -23,17 +23,18 @@
#ifndef INCLUDED_NOAA_HRPT_DEFRAMER_H
#define INCLUDED_NOAA_HRPT_DEFRAMER_H
+#include <noaa_api.h>
#include <gr_block.h>
class noaa_hrpt_deframer;
typedef boost::shared_ptr<noaa_hrpt_deframer> noaa_hrpt_deframer_sptr;
-noaa_hrpt_deframer_sptr
+NOAA_API noaa_hrpt_deframer_sptr
noaa_make_hrpt_deframer();
-class noaa_hrpt_deframer : public gr_block
+class NOAA_API noaa_hrpt_deframer : public gr_block
{
- friend noaa_hrpt_deframer_sptr noaa_make_hrpt_deframer();
+ friend NOAA_API noaa_hrpt_deframer_sptr noaa_make_hrpt_deframer();
noaa_hrpt_deframer();
unsigned int d_state;
diff --git a/gr-noaa/lib/noaa_hrpt_pll_cf.h b/gr-noaa/lib/noaa_hrpt_pll_cf.h
index 507d47fe7..8d3e8f8d5 100644
--- a/gr-noaa/lib/noaa_hrpt_pll_cf.h
+++ b/gr-noaa/lib/noaa_hrpt_pll_cf.h
@@ -23,17 +23,18 @@
#ifndef INCLUDED_NOAA_HRPT_PLL_CF_H
#define INCLUDED_NOAA_HRPT_PLL_CF_H
+#include <noaa_api.h>
#include <gr_sync_block.h>
class noaa_hrpt_pll_cf;
typedef boost::shared_ptr<noaa_hrpt_pll_cf> noaa_hrpt_pll_cf_sptr;
-noaa_hrpt_pll_cf_sptr
+NOAA_API noaa_hrpt_pll_cf_sptr
noaa_make_hrpt_pll_cf(float alpha, float beta, float max_offset);
-class noaa_hrpt_pll_cf : public gr_sync_block
+class NOAA_API noaa_hrpt_pll_cf : public gr_sync_block
{
- friend noaa_hrpt_pll_cf_sptr noaa_make_hrpt_pll_cf(float alpha, float beta, float max_offset);
+ friend NOAA_API noaa_hrpt_pll_cf_sptr noaa_make_hrpt_pll_cf(float alpha, float beta, float max_offset);
noaa_hrpt_pll_cf(float alpha, float beta, float max_offset);
float d_alpha; // 1st order loop constant