summaryrefslogtreecommitdiffstats
path: root/spec/rtems/ratemon/if/create.yml
blob: 4ffea875d2d09cbdfd1825e5f5110b9537abce05 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
brief: |
  Creates a period.
copyrights:
- Copyright (C) 2021 embedded brains GmbH (http://www.embedded-brains.de)
- Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR)
definition:
  default:
    attributes: null
    body: null
    params:
    - ${../../type/if/name:/name} ${.:/params[0]/name}
    - ${../../type/if/id:/name} *${.:/params[1]/name}
    return: ${../../status/if/code:/name}
  variants: []
description: |
  This directive creates a period which resides on the local node.  The period
  has the user-defined object name specified in ${.:/params[0]/name} The
  assigned object identifier is returned in ${.:/params[1]/name}.  This
  identifier is used to access the period with other rate monotonic related
  directives.
enabled-by: true
index-entries:
- create a period
interface-type: function
links:
- role: interface-placement
  uid: header
- role: interface-ingroup
  uid: group
- role: constraint
  uid: /constraint/directive-ctx-devinit
- role: constraint
  uid: /constraint/directive-ctx-task
- role: constraint
  uid: /constraint/object-allocator
- role: constraint
  uid: ../constraint/max
- role: constraint
  uid: /constraint/obj-unlimited-alloc
name: rtems_rate_monotonic_create
notes: |
  The calling task is registered as the owner of the created period.  Some
  directives can be only used by this task for the created period.

  For control and maintenance of the period, RTEMS allocates a
  ${/glossary/pcb:/term} from the local PCB free pool and initializes it.
params:
- description: |
    is the object name of the period.
  dir: null
  name: name
- description: |
    is the pointer to an ${../../type/if/id:/name} object.  When the directive
    call is successful, the identifier of the created period will be stored in
    this object.
  dir: out
  name: id
return:
  return: null
  return-values:
  - description: |
      The requested operation was successful.
    value: ${../../status/if/successful:/name}
  - description: |
      The ${.:/params[0]/name} parameter was invalid.
    value: ${../../status/if/invalid-name:/name}
  - description: |
      There was no inactive object available to create a period.  The number of
      periods available to the application is configured through the
      ${/acfg/if/max-periods:/name} application configuration option.
    value: ${../../status/if/too-many:/name}
type: interface