sco_content_v1.item
Copies one supported list/script record by zero-based kind ordinal in plugin/name order. Caller sets size >= sizeof(sco_content_item). Duplicate names retain distinct IDs. Failure leaves output untouched.
Signature
Section titled “Signature”sco_result (*)(sco_plugin *, sco_content_kind, uint32_t, sco_content_item *)Service and availability
Section titled “Service and availability”| Property | Value |
|---|---|
| Symbol | sco_content_v1.item |
| Record ID | sco-content-v1-item |
| Service | sco.content |
| Table | sco_content_v1 |
| Version macro | SCO_CONTENT_VERSION_1_0 |
| Packed table version | 65536 |
| Since / availability | size >= 16; 1.0 |
| Complete member extent (x64 bytes) | 16 |
| Table size (x64 bytes) | 24 |
Parameters and buffers
Section titled “Parameters and buffers”sco_result (*item)(sco_plugin* self, sco_content_kind kind, uint32_t ordinal, sco_content_item* out);
Copies one supported list/script record by zero-based kind ordinal in plugin/name order. Caller sets size >= sizeof(sco_content_item). Duplicate names retain distinct IDs. Failure leaves output untouched.
Results and failures
Section titled “Results and failures”Query NOT_FOUND when absent; UNAVAILABLE when stopped/terminal shutdown; WRONG_THREAD off game thread; BAD_ARG invalid/released self or invalid buffer/kind; NOT_FOUND ordinal end or unknown/stale ID; read TOO_MANY reports needed bytes.
Absent capability
Section titled “Absent capability”Query NOT_FOUND when service absent; no game capability required.
Ownership
Section titled “Ownership”Caller-owned copied records/bytes; host owns bounded startup snapshot. No paths, borrowed content pointers or allocation transfer.
Thread affinity
Section titled “Thread affinity”Game thread only; synchronous memory copies, no callouts or file IO.
Callback context
Section titled “Callback context”No callbacks.
Reentrancy
Section titled “Reentrancy”No callouts; callable from a game-thread consumer callback while runtime admission is open.
Cleanup and cancellation
Section titled “Cleanup and cancellation”No cancel or per-owner resource; host Stop clears snapshot and invalidates IDs. Table storage is process-lifetime; packs require restart.
Language mappings
Section titled “Language mappings”Status labels are copied verbatim from the catalogue: direct is native access; typed-wrapper is wrapper-backed; restricted is a subset/adaptation; unsupported means no supported route is established. No status implies universal safety.
| Language | Catalogue status | Source evidence / wrapper tokens |
|---|---|---|
| c | direct | include/sco_content.h(*item) |
| cpp | typed-wrapper | include/scosdk/content.hpptable_->item( |
| csharp | unsupported | docs/design/content-access.mdno C#/Lua binding |
| lua | unsupported | docs/design/content-access.mdno C#/Lua binding |
Examples
Section titled “Examples”ABI pins prove layout, not semantic behavior or a live game session.