ESPHome 2026.10.0-dev
Loading...
Searching...
No Matches
esphome::api::UserServiceBase< Ts > Class Template Referenceabstract

#include <user_services.h>

Inheritance diagram for esphome::api::UserServiceBase< Ts >:
esphome::api::UserServiceStatic esphome::api::UserServiceDescriptor

Public Member Functions

ListEntitiesServicesResponse encode_list_service_response (std::span< char > scratch) override
 
bool execute_service (const ExecuteServiceRequest &req) override
 
bool execute_service (const ExecuteServiceRequest &req, uint32_t action_call_id) override
 
 UserServiceStatic (const char *const *strings, uint32_t key, enums::SupportsResponseType supports_response=enums::SUPPORTS_RESPONSE_NONE)
 
- Public Member Functions inherited from esphome::api::UserServiceStatic
 UserServiceStatic (const char *const *strings, uint32_t key, enums::SupportsResponseType supports_response=enums::SUPPORTS_RESPONSE_NONE)
 
- Public Member Functions inherited from esphome::api::UserServiceDescriptor
bool is_internal ()
 

Protected Member Functions

virtual void execute (uint32_t call_id, bool return_response, Ts... x)=0
 
template<typename ArgsContainer , size_t... S>
void execute_ (const ArgsContainer &args, uint32_t call_id, bool return_response, std::index_sequence< S... >)
 
- Protected Member Functions inherited from esphome::api::UserServiceStatic
ListEntitiesServicesResponse encode_list_service_response_ (std::span< const enums::ServiceArgType > arg_types, std::span< char > scratch) const
 
StringRef str_ (size_t idx, std::span< char > &scratch) const
 Reference table entry idx; nullptr gives an empty StringRef.
 

Additional Inherited Members

- Protected Attributes inherited from esphome::api::UserServiceStatic
const char *const * strings_
 
uint32_t key_
 
enums::SupportsResponseType supports_response_
 

Detailed Description

template<typename... Ts>
class esphome::api::UserServiceBase< Ts >

Definition at line 78 of file user_services.h.

Member Function Documentation

◆ encode_list_service_response()

template<typename... Ts>
ListEntitiesServicesResponse esphome::api::UserServiceBase< Ts >::encode_list_service_response ( std::span< char > scratch)
inlineoverridevirtual

Implements esphome::api::UserServiceDescriptor.

Definition at line 82 of file user_services.h.

◆ execute()

◆ execute_()

template<typename... Ts>
template<typename ArgsContainer , size_t... S>
void esphome::api::UserServiceBase< Ts >::execute_ ( const ArgsContainer & args,
uint32_t call_id,
bool return_response,
std::index_sequence< S... >  )
inlineprotected

Definition at line 114 of file user_services.h.

◆ execute_service() [1/2]

template<typename... Ts>
bool esphome::api::UserServiceBase< Ts >::execute_service ( const ExecuteServiceRequest & req)
inlineoverridevirtual

Implements esphome::api::UserServiceDescriptor.

Definition at line 87 of file user_services.h.

◆ execute_service() [2/2]

template<typename... Ts>
bool esphome::api::UserServiceBase< Ts >::execute_service ( const ExecuteServiceRequest & req,
uint32_t action_call_id )
inlineoverridevirtual

Implements esphome::api::UserServiceDescriptor.

Definition at line 101 of file user_services.h.

◆ UserServiceStatic()

template<typename... Ts>
esphome::api::UserServiceStatic::UserServiceStatic ( const char *const * strings,
uint32_t key,
enums::SupportsResponseType supports_response = enums::SUPPORTS_RESPONSE_NONE )
inline

Definition at line 61 of file user_services.h.


The documentation for this class was generated from the following file: