Skip to content
This repository was archived by the owner on Feb 6, 2025. It is now read-only.

Commit a8e0064

Browse files
authored
Merge pull request #111 from AxisCommunications/sync-20231120-1
sync 20231120 1
2 parents 3ef9d6f + 1403b9c commit a8e0064

File tree

169 files changed

+11916
-62
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

169 files changed

+11916
-62
lines changed
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: Check manifest schemas format and release notes
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
paths:
7+
- 'docs/develop/manifest-schemas/*'
8+
- '.github/workflows/manifest-schemas.yml'
9+
10+
jobs:
11+
manifest-schemas-release-notes:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v4
15+
- name: Check manifest schemas format and release notes
16+
run: |
17+
base_path=docs/develop/manifest-schemas
18+
release_notes_page=$base_path/index.md
19+
new_schema_dummy_description=ADD-MANIFEST-SCHEMA-RELEASE-DESCRIPTION
20+
ret=0
21+
22+
# Set +e to not having to handle the grep exit status
23+
new_schema_found=$(grep "$new_schema_dummy_description" $release_notes_page || :)
24+
[ -z "$new_schema_found" ] || {
25+
printf '\n%s\n%s\n%s\n%s\n\n' \
26+
"### One or more new manifest schemas found" \
27+
"In file '$release_notes_page', replace string $new_schema_dummy_description" \
28+
"with release notes." \
29+
"Contact the responsible for the manifest schema update for information of the content of the new release."
30+
ret=1
31+
}
32+
exit $ret

docs/api/_setup_apidocs.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ replace_acap3_button() {
111111
#-------------------------------------------------------------------------------
112112

113113
# Release settings
114-
apis="axevent axoverlay larod licensekey vdostream"
114+
apis="axevent axoverlay axserialport axstorage larod licensekey vdostream"
115115

116116
# Version strings
117117
apiver_minor="${apiver#*.}"

docs/api/native-sdk-api.md

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,10 @@ The ACAP Native SDK provides the following APIs:
1515
- [Cairo](#cairo)
1616
- [OpenCL](#opencl)
1717
- [Event API](#event-api)
18+
- [Edge storage API](#edge-storage-api)
1819
- [License Key API](#license-key-api)
1920
- [FastCGI](#fastcgi)
21+
- [Serial port API](#serial-port-api)
2022

2123
## Compatibility
2224

@@ -238,6 +240,40 @@ The Axevent API was introduced in Native SDK 1.0.
238240
- [subscribe_to_events](https://github.com/AxisCommunications/acap-native-sdk-examples/tree/main/axevent/subscribe_to_events)
239241
- The example code is written in C which subscribes to different predefined events.
240242

243+
## Edge storage API
244+
245+
Go to the [ACAP API Documentation](src/api/axstorage/html/index.html) for detailed functional descriptions of this API.
246+
247+
The Edge storage API allows the application to save and retrieve data on mounted storage devices such as SD cards and NAS (Network Attached Storage) units. An application can only modify its own files on the storage device.
248+
An application can both send and receive events.
249+
250+
### Compatibility
251+
252+
The API supports products with the following chips:
253+
254+
- ARTPEC-8
255+
- ARTPEC-7
256+
- ARTPEC-6
257+
- Ambarella CV25
258+
- Ambarella S5L
259+
- Ambarella S5
260+
- i.MX 6SoloX
261+
- i.MX 6ULL
262+
263+
### Version history
264+
265+
The Edge storage API was introduced in Native SDK 1.11.
266+
267+
### Code Examples
268+
269+
- [axstorage](https://github.com/AxisCommunications/acap-native-sdk-examples/tree/main/axstorage)
270+
- This application demonstrates the usage of axstorage APIs, offering the following functionality:
271+
- List configured storage devices.
272+
- Subscribe to events from all storage devices.
273+
- Set up and utilize all available/mounted storage devices.
274+
- Continuously write data to two files on all available storage devices.
275+
- Automatically release any unmounted storage devices.
276+
241277
## License Key API
242278

243279
Go to the [ACAP API Documentation](src/api/licensekey/html/index.html) for detailed functional descriptions of this API.
@@ -293,3 +329,32 @@ The FastCGI API was introduced in Native SDK 1.6.
293329

294330
- [web-server-using-fastcgi](https://github.com/AxisCommunications/acap-native-sdk-examples/tree/main/web-server-using-fastcgi)
295331
- This example is written in C and explains how to build an ACAP application that can handle HTTP requests sent to the Axis device, using the device's own web server and FastCGI.
332+
333+
## Serial port API
334+
335+
Go to the [ACAP API Documentation](src/api/axserialport/html/index.html) for detailed functional descriptions of this API.
336+
337+
The Serial port API allows the application to configure and control the external serial port on selected Axis products.
338+
339+
### Compatibility
340+
341+
- The API supports the following standards:
342+
- RS-232
343+
- RS-422
344+
- RS-485
345+
- The API is product dependent since not all Axis products are equipped with a serial port.
346+
- The API supports products with the following chips:
347+
- ARTPEC-8
348+
- ARTPEC-7
349+
350+
### Version history
351+
352+
The Serial port API was introduced in Native SDK 1.11.
353+
354+
### Code Examples
355+
356+
- [axserialport](https://github.com/AxisCommunications/acap-native-sdk-examples/tree/main/axserialport)
357+
- This example details the creation of an ACAP application utilizing the axserialport API, showcasing the following actions:
358+
- Enabling the serial port.
359+
- Configuring parameters using the API.
360+
- Establishing communication between two available ports in the Axis product using GLib IOChannel methods.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Third Party Software Licenses
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
AXIS_USABLE_LIBS = UCLIBC GLIBC
2+
include $(AXIS_TOP_DIR)/tools/build/rules/common.mak
3+
4+
PROG = axserialport_pelco_spectra_mini
5+
OBJS = $(PROG).o
6+
PKGS = glib-2.0
7+
8+
CFLAGS += $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) pkg-config --cflags $(PKGS))
9+
CFLAGS += -I../library
10+
CFLAGS += -Wall -O2
11+
12+
LDFLAGS += -L../library
13+
LDLIBS += $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) pkg-config --libs $(PKGS))
14+
LDLIBS += -laxserialport
15+
16+
all: $(PROG)
17+
18+
$(PROG): $(OBJS)
19+
$(CC) $^ $(LIBS) $(LDLIBS) $(LDFLAGS) -lgthread-2.0 -o $@
20+
$(STRIP) $@
21+
22+
cflags:
23+
$(info $(CFLAGS))
24+
25+
ldlibs:
26+
$(info $(LDLIBS))
27+
28+
ldflags:
29+
$(info $(LDFLAGS))
30+
31+
clean:
32+
rm -f $(PROG) *.o core
33+
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
This code demonstrates how to use serial port API (axserialport)
2+
to control a Pelco Spectra mini PTZ camera connected to the serial port.
3+
4+
Check the SDK documentation for more information about the serial port API.

0 commit comments

Comments
 (0)