441 lines
21 KiB
C
441 lines
21 KiB
C
/////////////////////////////////////////////////////////////////////
|
|
// //
|
|
// file: autoGen_USBSystemClass_CCA.h //
|
|
// //
|
|
/////////////////////////////////////////////////////////////////////
|
|
// //
|
|
// Copyright (c) 2026 Acroname Inc. - All Rights Reserved //
|
|
// //
|
|
// This file is part of the BrainStem release. See the license.txt //
|
|
// file included with this package or go to //
|
|
// https://acroname.com/software/brainstem-development-kit //
|
|
// for full license details. //
|
|
/////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef __AUTOGEN_USBSYSTEM_CCA_H__
|
|
#define __AUTOGEN_USBSYSTEM_CCA_H__
|
|
|
|
// This file was auto-generated. Do not modify.
|
|
|
|
#include "CCA_Core.h"
|
|
|
|
#ifdef __GNUC__
|
|
#define DEPRECATED(...) __attribute__((deprecated(__VA_ARGS__)))
|
|
#elif defined(_MSC_VER)
|
|
#define DEPRECATED(...) __declspec(deprecated(__VA_ARGS__))
|
|
#else
|
|
#define DEPRECATED(...)
|
|
#pragma message("DEPRECATED is not defined for this compiler")
|
|
#endif
|
|
|
|
/// \defgroup USBSystemEntity USBSystem Entity
|
|
/// The USBSystem class provides high level control of the lower level Port Class.
|
|
///
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/// Gets the upstream port.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: The current upstream port.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getUpstream(unsigned int* id, struct Result* result, const int index);
|
|
|
|
/// Sets the upstream port.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param port The upstream port to set.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setUpstream(unsigned int* id, struct Result* result, const int index, const unsigned char port);
|
|
|
|
/// Gets the inter-port enumeration delay in milliseconds.
|
|
/// Delay is applied upon hub enumeration.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: the current inter-port delay in milliseconds.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getEnumerationDelay(unsigned int* id, struct Result* result, const int index);
|
|
|
|
/// Sets the inter-port enumeration delay in milliseconds.
|
|
/// Delay is applied upon hub enumeration.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param msDelay The delay in milliseconds to be applied between port enables
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setEnumerationDelay(unsigned int* id, struct Result* result, const int index, const unsigned int msDelay);
|
|
|
|
/// Gets the data role of all ports with a single call
|
|
/// Equivalent to calling PortClass::getDataRole() on each individual port.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: A bit packed representation of the data role for all ports.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getDataRoleList(unsigned int* id, struct Result* result, const int index);
|
|
|
|
/// Gets the current enabled status of all ports with a single call.
|
|
/// Equivalent to calling PortClass::setEnabled() on each port.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: Bit packed representation of the enabled status for all ports.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getEnabledList(unsigned int* id, struct Result* result, const int index);
|
|
|
|
/// Sets the enabled status of all ports with a single call.
|
|
/// Equivalent to calling PortClass::setEnabled() on each port.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param enabledList Bit packed representation of the enabled status for all ports to be
|
|
/// applied.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setEnabledList(unsigned int* id, struct Result* result, const int index, const unsigned int enabledList);
|
|
|
|
/// Gets the current mode of all ports with a single call.
|
|
/// Equivalent to calling PortClass:getMode() on each port.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: Length that was actually received and filled.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
/// \param buffer pointer to the start of a c style buffer to be filled
|
|
/// \param bufferLength Length of the buffer to be filed
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getModeList(unsigned int* id, struct Result* result, const int index, unsigned int* buffer, const unsigned int bufferLength);
|
|
|
|
/// Sets the mode of all ports with a single call.
|
|
/// Equivalent to calling PortClass::setMode() on each port
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param buffer Pointer to the start of a c style buffer to be transferred.
|
|
/// \param bufferLength Length of the buffer to be transferred.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setModeList(unsigned int* id, struct Result* result, const int index, const unsigned int* buffer, const unsigned int bufferLength);
|
|
|
|
/// Gets the state for all ports with a single call.
|
|
/// Equivalent to calling PortClass::getState() on each port.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: Length that was actually received and filled.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
/// \param buffer pointer to the start of a c style buffer to be filled
|
|
/// \param bufferLength Length of the buffer to be filed
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getStateList(unsigned int* id, struct Result* result, const int index, unsigned int* buffer, const unsigned int bufferLength);
|
|
|
|
/// Gets the behavior of the power manager.
|
|
/// The power manager is responsible for budgeting the power of the system, i.e. What happens
|
|
/// when requested power greater than available power.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: Variable to be filled with an enumerated representation of behavior.
|
|
/// Available behaviors are product specific. See the reference documentation.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getPowerBehavior(unsigned int* id, struct Result* result, const int index);
|
|
|
|
/// Sets the behavior of how available power is managed, i.e. What happens when requested
|
|
/// power is greater than available power.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param behavior An enumerated representation of behavior.
|
|
/// Available behaviors are product specific. See the reference documentation.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setPowerBehavior(unsigned int* id, struct Result* result, const int index, const unsigned char behavior);
|
|
|
|
/// Gets the current power behavior configuration.
|
|
/// Certain power behaviors use a list of ports to determine priority when budgeting power.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: Length that was actually received and filled.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
/// \param buffer pointer to the start of a c style buffer to be filled
|
|
/// \param bufferLength Length of the buffer to be filed
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getPowerBehaviorConfig(unsigned int* id, struct Result* result, const int index, unsigned int* buffer, const unsigned int bufferLength);
|
|
|
|
/// Sets the current power behavior configuration.
|
|
/// Certain power behaviors use a list of ports to determine priority when budgeting power.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param buffer Pointer to the start of a c style buffer to be transferred.
|
|
/// \param bufferLength Length of the buffer to be transferred.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setPowerBehaviorConfig(unsigned int* id, struct Result* result, const int index, const unsigned int* buffer, const unsigned int bufferLength);
|
|
|
|
/// Gets the behavior of how upstream and downstream ports are determined, i.e. How do you
|
|
/// manage requests for data role swaps and new upstream connections.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: Variable to be filled with an enumerated representation of behavior.
|
|
/// Available behaviors are product specific. See the reference documentation.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getDataRoleBehavior(unsigned int* id, struct Result* result, const int index);
|
|
|
|
/// Sets the behavior of how upstream and downstream ports are determined, i.e. How do you
|
|
/// manage requests for data role swaps and new upstream connections.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param behavior An enumerated representation of behavior.
|
|
/// Available behaviors are product specific. See the reference documentation.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setDataRoleBehavior(unsigned int* id, struct Result* result, const int index, const unsigned char behavior);
|
|
|
|
/// Gets the current data role behavior configuration.
|
|
/// Certain data role behaviors use a list of ports to determine priority host priority.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: Length that was actually received and filled.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
/// \param buffer pointer to the start of a c style buffer to be filled
|
|
/// \param bufferLength Length of the buffer to be filed
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getDataRoleBehaviorConfig(unsigned int* id, struct Result* result, const int index, unsigned int* buffer, const unsigned int bufferLength);
|
|
|
|
/// Sets the current data role behavior configuration.
|
|
/// Certain data role behaviors use a list of ports to determine host priority.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param buffer Pointer to the start of a c style buffer to be transferred.
|
|
/// \param bufferLength Length of the buffer to be transferred.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setDataRoleBehaviorConfig(unsigned int* id, struct Result* result, const int index, const unsigned int* buffer, const unsigned int bufferLength);
|
|
|
|
/// Gets the current mode of the selector input.
|
|
/// This mode determines what happens and in what order when the external selector input is
|
|
/// used.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: Variable to be filled with the selector mode
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getSelectorMode(unsigned int* id, struct Result* result, const int index);
|
|
|
|
/// Sets the current mode of the selector input.
|
|
/// This mode determines what happens and in what order when the external selector input is
|
|
/// used.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param mode Mode to be set.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setSelectorMode(unsigned int* id, struct Result* result, const int index, const unsigned char mode);
|
|
|
|
/// Gets the USB HighSpeed upstream port.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: The current upstream port.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getUpstreamHS(unsigned int* id, struct Result* result, const int index);
|
|
|
|
/// Sets the USB HighSpeed upstream port.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param port The upstream port to set.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setUpstreamHS(unsigned int* id, struct Result* result, const int index, const unsigned char port);
|
|
|
|
/// Gets the USB SuperSpeed upstream port.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: The current upstream port.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getUpstreamSS(unsigned int* id, struct Result* result, const int index);
|
|
|
|
/// Sets the USB SuperSpeed upstream port.
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param port The upstream port to set.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setUpstreamSS(unsigned int* id, struct Result* result, const int index, const unsigned char port);
|
|
|
|
/// Gets the current enabled overrides
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: Bit mapped representation of the current override configuration.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getOverride(unsigned int* id, struct Result* result, const int index);
|
|
|
|
/// Sets the current enabled overrides
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param overrides Overrides to be set in a bit mapped representation.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setOverride(unsigned int* id, struct Result* result, const int index, const unsigned int overrides);
|
|
|
|
/// Sets the USB HighSpeed Max datarate
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param datarate Maximum datarate for the USB HighSpeed signals.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setDataHSMaxDatarate(unsigned int* id, struct Result* result, const int index, const unsigned int datarate);
|
|
|
|
/// Gets the USB HighSpeed Max datarate
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: Current maximum datarate for the USB HighSpeed signals.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getDataHSMaxDatarate(unsigned int* id, struct Result* result, const int index);
|
|
|
|
/// Sets the USB SuperSpeed Max datarate
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code.
|
|
/// \param index The index of the entity in question.
|
|
/// \param datarate Maximum datarate for the USB SuperSpeed signals.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_setDataSSMaxDatarate(unsigned int* id, struct Result* result, const int index, const unsigned int datarate);
|
|
|
|
/// Gets the USB SuperSpeed Max datarate
|
|
///
|
|
/// The result parameter will output the following fields:
|
|
/// \li error: \ref EntityReturnValues common entity return value
|
|
/// \li value: Current maximum datarate for the USB SuperSpeed signals.
|
|
///
|
|
/// \param id ID assigned through "module_createStem"
|
|
/// \param result Output object containing result code and the requested value if successful.
|
|
/// \param index The index of the entity in question.
|
|
///
|
|
aLIBEXPORT void __stdcall usbsystem_getDataSSMaxDatarate(unsigned int* id, struct Result* result, const int index);
|
|
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // __AUTOGEN_USBSYSTEM_CCA_H__
|