Plantuml generates interface from Doxygen group - doxygen

I would like to generate an interface diagram using Plantuml in Doxygen. Instead of typing the interfaces one by one as below, is it possible to generate the interface from the Doxygen group? I have created a group called "ExportInterface".
#startuml
interface "interface.h" as interface
{
function1(void): void
function2(void): void
function3(void): int
}
#enduml
doxygen -x Doxyfile
# Difference with default Doxyfile 1.9.1 (ef9b20ac7f8a8621fcfc299f8bd0b80422390f4b)
OUTPUT_DIRECTORY = ms
ALWAYS_DETAILED_SEC = YES
STRIP_FROM_PATH = .
STRIP_FROM_INC_PATH = .
ALIASES = "project=\par Project: \n" \
"subsystem=\par Subsystem: \n" \
"history=\par History: \n\htmlonly <pre>" \
endhistory=</pre>\endhtmlonly \
"startuml{1}=\image html \1\n\image latex \1\n\if DontIgnorePlantUMLCode" \
enduml=\endif \
"xrefreq{2}=#ref \1 \"\1\" #anchor \1 <a href='\2' target='_blank'>Requirements Object Link</a>\n" \
"satisfyreq{2}=#xrefitem satisfy \"Satisfies requirement\" \"Requirement Satisfaction\" #xrefreq{\1,\2}" \
"verifyreq{2}=#xrefitem verify \"Verifies requirement\" \"Requirement Verification\" #xrefreq{\1,\2}" \
"xrefarc{2}=#ref \1 \"\1\" #anchor \1 <a href='\2' target='_blank'>Containing Rhapsody Model</a>\n" \
"xrefarc_path{3}=#ref \1 \"\2\" #anchor \1 <a href='\3' target='_blank'>Containing Rhapsody Model</a>\n" \
"tracearc{2}=#xrefitem architecture \"Architecture\" \"Traced Architecture\" #xrefarc{\1,\2}" \
"tracearc_path{3}=#xrefitem architecture \"Architecture\" \"Traced Architecture\" #xrefarc{\1,\2,\3}" \
"startTraceIt{1}=<B>\anchor \1\nTraceIt data: \1</B><PRE>" \
endTraceIt=</PRE> \
"reftrace{1}=#anchor ref_\1 #ref \1" \
"reftrace{2}=#anchor ref\1_\2 #ref \2"
EXTENSION_MAPPING = fidl=IDL
DISTRIBUTE_GROUP_DOC = YES
TYPEDEF_HIDES_STRUCT = YES
EXTRACT_ALL = YES
EXTRACT_PRIVATE = YES
EXTRACT_STATIC = YES
EXTRACT_ANON_NSPACES = YES
CASE_SENSE_NAMES = YES
SORT_MEMBER_DOCS = NO
WARN_LOGFILE = doxygen-build/warnings.log
INPUT = ../adapt \
../core \
FILE_PATTERNS = *.c \
*.cc \
*.cxx \
*.cpp \
*.c++ \
*.java \
*.ii \
*.ixx \
*.ipp \
*.i++ \
*.inl \
*.idl \
*.ddl \
*.odl \
*.h \
*.hh \
*.hxx \
*.hpp \
*.h++ \
*.cs \
*.d \
*.php \
*.php4 \
*.php5 \
*.phtml \
*.inc \
*.m \
*.markdown \
*.md \
*.mm \
*.dox \
*.pyw \
*.f90 \
*.f \
*.for \
*.tcl \
*.vhd \
*.vhdl \
*.ucf \
*.qsf \
*.as \
and \
*.js \
*.fidl \
*.fdepl
RECURSIVE = YES
EXCLUDE_PATTERNS = *_Template.c
IMAGE_PATH = images
FILTER_PATTERNS = *.fidl=
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
VERBATIM_HEADERS = NO
HTML_TIMESTAMP = YES
GENERATE_ECLIPSEHELP = YES
GENERATE_TREEVIEW = YES
GENERATE_LATEX = NO
MACRO_EXPANSION = YES
SEARCH_INCLUDES = NO
PREDEFINED = "FUNC(type, memclass)=type" \
"VAR(type, memclass)=type" \
"CONST(type, memclass)=const type" \
"P2CONST(type, memclass, ptrclass)=const type *" \
"CONSTP2CONST(ptrtype, memclass, ptrclass)=ptrtype * const" \
DOXYGEN_SHOULD_SKIP_THIS \
__declspec(x)=
CLASS_DIAGRAMS = NO
HAVE_DOT = YES
UML_LOOK = YES
CALL_GRAPH = YES
DOT_IMAGE_FORMAT = svg
PLANTUML_JAR_PATH = C:\ProgramData\chocolatey\lib\plantuml\tools\plantuml.jar
DOT_GRAPH_MAX_NODES = 500

Related

How to make Synopsys VCS Verdi to show display macro messages in Wave window?

I know that in Questa or Riviera UVM error messages can be indicated in the waveform as well.
With system verilog display macros (but not UVM!), how can an indicator be shown in the Synopsis Verdi waveform when the display happens?
For example lets say something like this macro is used:
`define DELIM
`define DEBUG_PRINT(p0, p1=ELIM, p2=ELIM, p3=ELIM, p4=ELIM, p5=ELIM) \
`ifdef D``p1 \
my_debug($psprintf(p0)); \
`else \
`ifdef D``p2 \
my_debug($psprintf(p0, p1)); \
`else \
`ifdef D``p3 \
my_debug($psprintf(p0, p1, p2)); \
`else \
`ifdef D``p4 \
my_debug($psprintf(p0, p1, p2, p3)); \
`else \
`ifdef D``p5 \
my_debug($psprintf(p0, p1, p2, p3, p4)); \
`else \
my_debug($psprintf(p0, p1, p2, p3, p4, p5)); \
`endif \
`endif \
`endif \
`endif \
`endif
Ideas that may be relevant here to some solution:
I am aware of the TMR capability briefly but I'm not sure if that should be applied here. Neither if it is propagating to the Wave window as an indicator.
If it would be necessary to use some workaround like below (flag/event), since it is not UVM, I'm not sure how to get around the problem (such as discussed here) of applying the semicolon in the middle :
my_debug($psprintf(p0)); \ -> tb.event \

Yocto:How to use meta-intel to generate iso images that can be started in vmware?

I want to use the meta intel layer to generate an ISO image of core image minimal.Although the image is generated normally, I cannot use vmware to start it. The picture is as follows:
enter image description here
This is my local.conf.
MACHINE ?= "intel-corei7-64"
#
# This sets the default machine to be qemux86-64 if no other machine is selected:
MACHINE ??= "qemux86-64"
DISTRO ?= "poky"
EXTRA_IMAGE_FEATURES ?= "debug-tweaks"
USER_CLASSES ?= "buildstats"
IMAGE_FSTYPES += "live"
NOISO = "0"
PREFERRED_PROVIDER_virtual/kernel = "linux-intel"
DEPENDS:append:${MACHINE} = " cdrtools-native"
IMAGE_FSTYPES:append = " ext4"
IMAGE_TYPEDEP_wic = "ext4"
do_image_wic[depends] += "${INITRD_IMAGE_LIVE}:do_image_complete"
do_rootfs[depends] += "virtual/kernel:do_deploy"
IMAGE_BOOT_FILES:append = "\
${KERNEL_IMAGETYPE} \
microcode.cpio \
${IMGDEPLOYDIR}/${IMAGE_BASENAME}-${MACHINE}.ext4;rootfs.img \
${#bb.utils.contains('EFI_PROVIDER', 'grub-efi', 'grub-efi- bootx64.efi;EFI/BOOT/bootx64.efi', '', d)} \
${#bb.utils.contains('EFI_PROVIDER', 'grub-efi', '${IMAGE_ROOTFS}/boot/EFI/BOOT/grub.cfg;EFI/BOOT/grub.cfg', '', d)} \
${#bb.utils.contains('EFI_PROVIDER', 'systemd-boot', 'systemd-bootx64.efi;EFI/BOOT/bootx64.efi', '', d)} \
${#bb.utils.contains('EFI_PROVIDER', 'systemd-boot', '${IMAGE_ROOTFS}/boot/loader/loader.conf;loader/loader.conf ', '', d)} \
${#bb.utils.contains('EFI_PROVIDER', 'systemd-boot', '${IMAGE_ROOTFS}/boot/loader/entries/boot.conf;loader/entries/boot.conf', '', d)} "
This is my bblayer.conf.
POKY_BBLAYERS_CONF_VERSION = "2"
BBPATH = "${TOPDIR}"
BBFILES ?= ""
BBLAYERS ?= " \
/home/brain/poky/meta \
/home/brain/poky/meta-poky \
/home/brain/poky/meta-yocto-bsp \
/home/brain/poky/meta-intel\
"
Now how can I generate an iso image that can be started normally?
This one should work with VMWare:
IMAGE_FSTYPES = wic.vmdk

If YAD is a fork of Zenity why is there no --imagelist?

Zenity is used in many of my bash projects, but looking at the advanced features of YAD there are many reasons to switch. After some testing unfortunately I discovered there is no --imagelist option for the list type dialog. This is a major problem as most of my projects use imagelists.
The below example runs on zenity version 3.28.1
#!/bin/bash
table=(~/image.png " " "Title1" " " "description1" "output1" ~/image.png " " "Title2" " " "description2" "output2" ~/image.png " " "Title3" " " "description3" "output3")
zenity --list --title="page title" --text="some random text" --imagelist --ok-label=Open --cancel-label=Home --print-column=6 --hide-column=6 --separator=' ' --width=600 --height=400 \
--column="Cover image" \
--column=" " \
--column="Name" \
--column=" " \
--column="details" \
--column="Folder" \
"${table[#]}"
the dialog should look like this:
In this example ${table[#]} is an array that contains all the data for each row including the file-path to the image in column 1. Is there a way to do this in YAD?
I installed YAD and looked at all the help pages provided in terminal, also tried to run similar imagelist examples, but it seems to be not supported (syntax is mostly the same as YAD is a fork of zenity)
With yad the columns can have a type associated with them. In your case you want to use the :IMG type for the first column, and the other two can remain as plain text.
table=(
~/image.png "" "Title1" "" "description1" "output1"
~/image.png "" "Title2" "" "description2" "output2"
~/image.png "" "Title3" "" "description3" "output3"
)
yad \
--list \
--title="page title" \
--text="some random text" \
--imagelist \
--print-column=6 \
--hide-column=6 \
--separator=' ' \
--width=600 \
--height=400 \
--column="Cover image:IMG" \
--column=" " \
--column="Name" \
--column=" " \
--column="details" \
--column="Folder" \
--button="Home":1 \
--button="Open":20 \
--response=20 \
"${table[#]}"
The output, missing your images
That will set the exit code to 20 if you press Enter or click Open on a list item, as well as outputting "output1" or "output2" etc.
That said, I have been experiencing issues with the exit codes or output text not appearing correctly. The above example works fine for me, but if I change the the Open exit code to "25" instead of "20" it stops working. No idea why it behaves inconsistently.

error while opening CHM after compiling help using doxygen

I am recently getting the following error while opening CHM file generated by Doxywizard version 1.8.16.
On a Win 7 m/c, I get the following error on all pages:
'$' is undefined
for every page.
it comes from the following line in index.html
$(function() {
initMenu('',false,false,'search.php','Search');
});
UPDATED LATER:
On a Win 10 m/c, i didn't get the above error, but a different error in some pages in the CHM as follows :
Unable to get property 'style' of undefined or null reference
This error happens within the jquery.js file.
--
Diff of configuration is the following (note that I have replaced some names with '...'):
# Difference with default Doxyfile 1.8.16 (cfd73d5c4d1a66c620a3b7c08b72a3f3c3f9
255*)
PROJECT_NAME = ...
PROJECT_NUMBER = x.y.z.w
PROJECT_BRIEF = "..."
PROJECT_LOGO = .../....png
FULL_PATH_NAMES = NO
TAB_SIZE = 8
OPTIMIZE_OUTPUT_FOR_C = YES
TOC_INCLUDE_HEADINGS = 0
EXTRACT_ALL = YES
HIDE_SCOPE_NAMES = YES
SHOW_USED_FILES = NO
INPUT = ../src/ \
../src/main.c \
...
...
../docs/....md \
\docs
FILE_PATTERNS = *.c \
*.cc \
*.cxx \
*.cpp \
*.c++ \
*.d \
*.java \
*.ii \
*.ixx \
*.ipp \
*.i++ \
*.inl \
*.h \
*.hh \
*.hxx \
*.hpp \
*.h++ \
*.idl \
*.odl \
*.cs \
*.php \
*.php3 \
*.inc \
*.m \
*.markdown \
*.md \
*.mm \
*.dox \
*.py \
*.f90 \
*.f \
*.for \
*.vhd \
*.vhdl
RECURSIVE = YES
EXAMPLE_PATTERNS = *.c \
*.h
HTML_TIMESTAMP = YES
GENERATE_DOCSET = YES
GENERATE_HTMLHELP = YES
CHM_FILE = mydoc.chm
HHC_LOCATION = "C:/Program Files (x86)/HTML Help Workshop/hhc.exe"
GENERATE_TREEVIEW = YES
MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest
LATEX_CMD_NAME = latex
LATEX_MAKEINDEX_CMD = \makeindex
INCLUDE_PATH = ../include
HAVE_DOT = YES
CALL_GRAPH = YES
CALLER_GRAPH = YES
DOT_PATH = "C:/Program Files (x86)/Graphviz2.38/bin"

do_compile error while running bitbake on poky

iam using poky to build a BSP for my imxsabreauto board. i got the following error. please help me on this.
error log:
NOTE: Preparing runqueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: Function failed: do_compile (log file is located at /home/viswanath/SabreAuto_error/build-wayland/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/busybox/1.22.1-r32/temp/log.do_compile.15410)
ERROR: Logfile of failure stored in: /home/viswanath/SabreAuto_error/build-wayland/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/busybox/1.22.1-r32/temp/log.do_compile.15410
| DEBUG: SITE files ['endian-little', 'bit-32', 'arm-common', 'common-linux', 'common-glibc', 'arm-linux', 'arm-linux-gnueabi', 'common']
| DEBUG: Executing shell function do_compile
| grep: .config: No such file or directory
| cp: cannot stat '.config': No such file or directory
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /home/viswanath/SabreAuto_error/build-wayland/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/busybox/1.22.1-r32/temp/log.do_compile.15410)
ERROR: Task 2086 (/home/viswanath/SabreAuto_error/sources/poky/meta/recipes-core/busybox/busybox_1.22.1.bb, do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 2014 tasks of which 16 didn't need to be rerun and 1 failed.
Waiting for 0 running tasks to finish:
Summary: 1 task failed:
/home/viswanath/SabreAuto_error/sources/poky/meta/recipes-core/busybox/busybox_1.22.1.bb, do_compile
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
bitbake file:
require busybox.inc
PR = "r32"
SRC_URI =
"http://www.busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
file://get_header_tar.patch \
file://busybox-appletlib-dependency.patch \
file://busybox-udhcpc-no_deconfig.patch \
file://find-touchscreen.sh \
file://busybox-cron \
file://busybox-httpd \
file://busybox-udhcpd \
file://default.script \
file://simple.script \
file://hwclock.sh \
file://mount.busybox \
file://syslog \
file://syslog-startup.conf \
file://syslog.conf \
file://busybox-syslog.default \
file://mdev \
file://mdev.conf \
file://umount.busybox \
file://defconfig \
file://busybox-syslog.service.in \
file://busybox-klogd.service.in \
file://fail_on_no_media.patch \
file://run-ptest \
file://inetd.conf \
file://inetd \
file://login-utilities.cfg \
file://0001-build-system-Specify-nostldlib-when-linking-to-.o-fi.patch \
file://recognize_connmand.patch \
file://busybox-cross-menuconfig.patch \
"
SRC_URI[tarball.md5sum] = "337d1a15ab1cb1d4ed423168b1eb7d7e"
SRC_URI[tarball.sha256sum] = "ae0b029d0a9e4dd71a077a790840e496dd838998e4571b87b60fed7462b6678b"
EXTRA_OEMAKE += "V=1 ARCH=${TARGET_ARCH} CROSS_COMPILE=${TARGET_PREFIX} SKIP_STRIP=y"
do_install_ptest () {
cp -r ${B}/testsuite ${D}${PTEST_PATH}/
cp ${B}/.config ${D}${PTEST_PATH}/
ln -s /bin/busybox ${D}${PTEST_PATH}/busybox
}
inherit autotools gettext
the error seems to there is no ".config file".
if you need p-test click the link p-test yocto
for busybox see the link busybox.bb