-
Notifications
You must be signed in to change notification settings - Fork 17.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Tools: logger_metadata: add emit_md.py
- Loading branch information
1 parent
66c674c
commit c5a22d5
Showing
3 changed files
with
85 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
import os | ||
import time | ||
import emitter | ||
|
||
class MDEmitter(emitter.Emitter): | ||
def preface(self): | ||
if os.getenv('BRDOC') is not None: | ||
now = time.strftime('%Y-%m-%dT%H:%M:%S%z') | ||
now = now[:-2] + ':' + now[-2:] | ||
return '\n'.join(( | ||
'+++', | ||
'title = "Onboard Log Messages"', | ||
'description = "Message listing for DataFlash autopilot logs."', | ||
f'date = {now}', | ||
'template = "docs/page.html"', | ||
'sort_by = "weight"', | ||
'weight = 30', | ||
'draft = false', | ||
'[extra]', | ||
'toc = true', | ||
'top = false', | ||
'+++\n', | ||
'<!-- Dynamically generated using Tools/autotest/logger_metadata/parse.py', | ||
'DO NOT EDIT -->', | ||
'This is a list of log messages which may be present in DataFlash (`.bin`) ' | ||
'logs produced and stored onboard ArduSub vehicles (see [Log Parameters]' | ||
'(../parameters/#log-parameters) for creation details). ' | ||
'It is possible to [add a new message]' | ||
'(https://ardupilot.org/dev/docs/code-overview-adding-a-new-log-message.html) ' | ||
'by modifying the firmware.\n', | ||
'DataFlash logs can be downloaded and analysed ' | ||
'[from a computer](http://www.ardusub.com/reference/data-logging.html#downloading) ' | ||
'or [through BlueOS]' | ||
'(@/software/onboard/BlueOS-1.1/advanced-usage/index.md#log-browser).\n' | ||
)) | ||
|
||
return """<!-- Dynamically generated list of Logger Messages | ||
This page was generated using Tools/autotest/logger_metdata/parse.py | ||
DO NOT EDIT | ||
--> | ||
<h3 style="text-align: center">Onboard Message Log Messages</h3> | ||
<hr /> | ||
<p>This is a list of log messages which may be present in logs produced and stored onboard ArduPilot vehicles.</p> | ||
<!-- add auto-generated table of contents with "Table of Contents Plus" plugin --> | ||
[toc exclude="Onboard Message Log Messages"] | ||
""" | ||
def postface(self): | ||
return "" | ||
|
||
def start(self): | ||
self.fh = open("LogMessages.md", mode='w') | ||
print(self.preface(), file=self.fh) | ||
|
||
def emit(self, doccos, enumerations=None): | ||
self.start() | ||
for docco in doccos: | ||
print(f'## {docco.name}', file=self.fh) | ||
desc = '' | ||
if docco.description is not None: | ||
desc += docco.description | ||
if docco.url is not None: | ||
desc += f' ([Read more...]({docco.url}))' | ||
print(desc, file=self.fh) | ||
print("\n|FieldName|Description|\n|---|---|", file=self.fh) | ||
for f in docco.fields_order: | ||
if "description" in docco.fields[f]: | ||
fdesc = docco.fields[f]["description"] | ||
else: | ||
fdesc = "" | ||
print(f'|{f}|{fdesc}|', file=self.fh) | ||
print("", file=self.fh) | ||
self.stop() | ||
|
||
def stop(self): | ||
print(self.postface(), file=self.fh) | ||
self.fh.close() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters