diff options
Diffstat (limited to 'docs/sphinx/source/analog')
-rw-r--r-- | docs/sphinx/source/analog/get_blocks.py | 106 | ||||
-rw-r--r-- | docs/sphinx/source/analog/index.rst | 61 | ||||
-rw-r--r-- | docs/sphinx/source/analog/level_controllers_blk.rst | 13 | ||||
-rw-r--r-- | docs/sphinx/source/analog/measurement_tools_blk.rst | 6 | ||||
-rw-r--r-- | docs/sphinx/source/analog/modulators_blk.rst | 8 | ||||
-rw-r--r-- | docs/sphinx/source/analog/peak_detectors_blk.rst | 4 | ||||
-rw-r--r-- | docs/sphinx/source/analog/synchronizers_blk.rst | 6 |
7 files changed, 204 insertions, 0 deletions
diff --git a/docs/sphinx/source/analog/get_blocks.py b/docs/sphinx/source/analog/get_blocks.py new file mode 100644 index 0000000000..a288393132 --- /dev/null +++ b/docs/sphinx/source/analog/get_blocks.py @@ -0,0 +1,106 @@ +""" +This script regenerates the gnuradio.blocks sphinx source code. +""" + +from gnuradio import analog +import sys +import os + +doxyxml_location = os.path.abspath("../../../doxygen") +xml_location = os.path.abspath("../../../../build/docs/doxygen/xml/") +sys.path.append(doxyxml_location) + +from doxyxml import DoxyIndex, DoxyClass, DoxyFriend, DoxyFunction, DoxyFile, DoxyGroup +from doxyxml import DoxyOther, base + +class Block(object): + """ + Checks if doxyxml produced objects correspond to a new style + gnuradio block. + """ + + @classmethod + def includes(cls, item): + if not isinstance(item, DoxyClass): + return False + # Check for a parsing error. + if item.error(): + return False + is_a_block = item.has_member('make', DoxyFunction) and item.has_member('sptr', DoxyOther) + return is_a_block + +class Group(object): + """ + Checks if doxyxml produced objects correspond to a group. + """ + + @classmethod + def includes(cls, item): + if not isinstance(item, DoxyGroup): + return False + # Check for a parsing error. + if item.error(): + return False + return True + +def main(): + di = DoxyIndex(xml_location) + blocks = di.in_category(Block) + analog_blocks = [] + for block in blocks: + if block.name().startswith("gr::analog::"): + analog_blocks.append(block) + + all_grouped_blocks = [] + groups = di.in_category(Group) + groupinfo = [] + for group in groups: + contains_analog_blocks = False + block_list = [] + members = group.members() + for member in members: + if member.name().startswith("gr::analog"): + all_grouped_blocks.append(member) + if not contains_analog_blocks: + contains_analog_blocks = True + groupinfo.append((group.name(), group.title, block_list)) + block_list.append(member) + + for block in analog_blocks: + if block not in all_grouped_blocks: + print("Didn't find block {0}".format(block.name())) + + blockindex = ["""gnuradio.analog +=============== + +.. automodule:: gnuradio.analog"""] + for groupname, grouptitle, blocks in groupinfo: + blockindex.append("") + blockindex.append(grouptitle) + blockindex.append('-'*len(grouptitle)) + blockindex.append(""" +.. autosummary:: + :nosignatures: +""") + for block in blocks: + blockindex.append(" gnuradio.analog.{0}".format( + block.name()[len("gr::analog::"):])) + grouppage = [] + title = "gnuradio.analog: {0}".format(grouptitle) + grouppage.append(title) + grouppage.append('='*len(title)) + grouppage.append('') + for block in blocks: + shortname = block.name()[len("gr::analog::"):] + grouppage.append(".. autoblock:: gnuradio.analog.{0}".format(shortname)) + text = '\n'.join(grouppage) + f = open("{0}.rst".format(groupname), 'w') + f.write(text) + f.close() + text = "\n".join(blockindex) + f = open("index.rst", 'w') + f.write(text) + f.close() + +if __name__ == '__main__': + main() diff --git a/docs/sphinx/source/analog/index.rst b/docs/sphinx/source/analog/index.rst new file mode 100644 index 0000000000..668247cab3 --- /dev/null +++ b/docs/sphinx/source/analog/index.rst @@ -0,0 +1,61 @@ +gnuradio.analog +=============== + +.. automodule:: gnuradio.analog + +Level Controllers +----------------- + +.. autosummary:: + :nosignatures: + + gnuradio.analog.agc_cc + gnuradio.analog.agc2_cc + gnuradio.analog.agc2_ff + gnuradio.analog.agc_ff + gnuradio.analog.ctcss_squelch_ff + gnuradio.analog.feedforward_agc_cc + gnuradio.analog.pwr_squelch_cc + gnuradio.analog.pwr_squelch_ff + gnuradio.analog.rail_ff + gnuradio.analog.simple_squelch_cc + +Measurement Tools +----------------- + +.. autosummary:: + :nosignatures: + + gnuradio.analog.probe_avg_mag_sqrd_c + gnuradio.analog.probe_avg_mag_sqrd_cf + gnuradio.analog.probe_avg_mag_sqrd_f + +Modulators and Demodulators +--------------------------- + +.. autosummary:: + :nosignatures: + + gnuradio.analog.cpfsk_bc + gnuradio.analog.fmdet_cf + gnuradio.analog.frequency_modulator_fc + gnuradio.analog.phase_modulator_fc + gnuradio.analog.quadrature_demod_cf + +Peak Detectors +-------------- + +.. autosummary:: + :nosignatures: + + gnuradio.analog.dpll_bb + +Synchronizers +------------- + +.. autosummary:: + :nosignatures: + + gnuradio.analog.pll_carriertracking_cc + gnuradio.analog.pll_freqdet_cf + gnuradio.analog.pll_refout_cc diff --git a/docs/sphinx/source/analog/level_controllers_blk.rst b/docs/sphinx/source/analog/level_controllers_blk.rst new file mode 100644 index 0000000000..738535d207 --- /dev/null +++ b/docs/sphinx/source/analog/level_controllers_blk.rst @@ -0,0 +1,13 @@ +gnuradio.analog: Level Controllers +================================== + +.. autoblock:: gnuradio.analog.agc_cc +.. autoblock:: gnuradio.analog.agc2_cc +.. autoblock:: gnuradio.analog.agc2_ff +.. autoblock:: gnuradio.analog.agc_ff +.. autoblock:: gnuradio.analog.ctcss_squelch_ff +.. autoblock:: gnuradio.analog.feedforward_agc_cc +.. autoblock:: gnuradio.analog.pwr_squelch_cc +.. autoblock:: gnuradio.analog.pwr_squelch_ff +.. autoblock:: gnuradio.analog.rail_ff +.. autoblock:: gnuradio.analog.simple_squelch_cc diff --git a/docs/sphinx/source/analog/measurement_tools_blk.rst b/docs/sphinx/source/analog/measurement_tools_blk.rst new file mode 100644 index 0000000000..be9accc7e5 --- /dev/null +++ b/docs/sphinx/source/analog/measurement_tools_blk.rst @@ -0,0 +1,6 @@ +gnuradio.analog: Measurement Tools +================================== + +.. autoblock:: gnuradio.analog.probe_avg_mag_sqrd_c +.. autoblock:: gnuradio.analog.probe_avg_mag_sqrd_cf +.. autoblock:: gnuradio.analog.probe_avg_mag_sqrd_f
\ No newline at end of file diff --git a/docs/sphinx/source/analog/modulators_blk.rst b/docs/sphinx/source/analog/modulators_blk.rst new file mode 100644 index 0000000000..3e9f279271 --- /dev/null +++ b/docs/sphinx/source/analog/modulators_blk.rst @@ -0,0 +1,8 @@ +gnuradio.analog: Modulators and Demodulators +============================================ + +.. autoblock:: gnuradio.analog.cpfsk_bc +.. autoblock:: gnuradio.analog.fmdet_cf +.. autoblock:: gnuradio.analog.frequency_modulator_fc +.. autoblock:: gnuradio.analog.phase_modulator_fc +.. autoblock:: gnuradio.analog.quadrature_demod_cf diff --git a/docs/sphinx/source/analog/peak_detectors_blk.rst b/docs/sphinx/source/analog/peak_detectors_blk.rst new file mode 100644 index 0000000000..3105202c2a --- /dev/null +++ b/docs/sphinx/source/analog/peak_detectors_blk.rst @@ -0,0 +1,4 @@ +gnuradio.analog: Peak Detectors +=============================== + +.. autoblock:: gnuradio.analog.dpll_bb
\ No newline at end of file diff --git a/docs/sphinx/source/analog/synchronizers_blk.rst b/docs/sphinx/source/analog/synchronizers_blk.rst new file mode 100644 index 0000000000..938b24ad61 --- /dev/null +++ b/docs/sphinx/source/analog/synchronizers_blk.rst @@ -0,0 +1,6 @@ +gnuradio.analog: Synchronizers +============================== + +.. autoblock:: gnuradio.analog.pll_carriertracking_cc +.. autoblock:: gnuradio.analog.pll_freqdet_cf +.. autoblock:: gnuradio.analog.pll_refout_cc
\ No newline at end of file |