Global Namespace

Overview

// namespaces

namespace AttributeFactory;
namespace Core;
    namespace Core::Args;
    namespace Core::Bluetooth;
    namespace Core::CoreSpinLock;
    namespace Core::Errors;
    namespace Core::HTTPDefinitions;
    namespace Core::HighPerformanceClock;
    namespace Core::IO;
    namespace Core::Java;
    namespace Core::Meta;
    namespace Core::Platform;
        namespace Core::Platform::CurrentProcess;
        namespace Core::Platform::CurrentThread;
        namespace Core::Platform::Debug;
        namespace Core::Platform::FileSystem;
        namespace Core::Platform::HighPerformanceClock;
        namespace Core::Platform::Network;
        namespace Core::Platform::PosixSocketSets;
        namespace Core::Platform::SSLTypes;
        namespace Core::Platform::SocketSets;
        namespace Core::Platform::StaticThreads;
        namespace Core::Platform::SystemClock;
            namespace Core::Platform::SystemClock::Helper;
        namespace Core::Platform::TLS;
    namespace Core::Plugins;
    namespace Core::Portable;
        namespace Core::Portable::AuthorizationPolicy;
        namespace Core::Portable::BMF;
        namespace Core::Portable::BitmapFileFormat;
        namespace Core::Portable::Colors;
        namespace Core::Portable::ComponentFlags;
        namespace Core::Portable::HTTP;
        namespace Core::Portable::Logging;
        namespace Core::Portable::ResourceAttributes;
        namespace Core::Portable::ThreadAwareCompression;
        namespace Core::Portable::ViewAttributes;
        namespace Core::Portable::ViewClasses;
    namespace Core::Security;
        namespace Core::Security::JOSE;
    namespace Core::Skin;
        namespace Core::Skin::FileNames;
        namespace Core::Skin::KeyboardCapitalization;
        namespace Core::Skin::KeyboardLayout;
        namespace Core::Skin::ResourceAttributes;
        namespace Core::Skin::ViewAttributes;
        namespace Core::Skin::ViewClasses;
    namespace Core::Sockets;
        namespace Core::Sockets::Discovery;
        namespace Core::Sockets::Network;
        namespace Core::Sockets::SSLTypes;
        namespace Core::Sockets::SocketTypes;
            namespace Core::Sockets::SocketTypes::SocketOption;
    namespace Core::SystemClock;
    namespace Core::Test;
    namespace Core::Text;
        namespace Core::Text::Json;
        namespace Core::Text::UTFCodec;
        namespace Core::Text::UTFFunctions;
    namespace Core::Threads;
        namespace Core::Threads::CurrentProcess;
        namespace Core::Threads::CurrentThread;
        namespace Core::Threads::TLS;
        namespace Core::Threads::Threading;
    namespace Core::URLEncoding;
    namespace Core::Usb;
    namespace Core::Zip;
namespace libb64;

// typedefs

typedef uint8_t sa_family_t;

// structs

struct EvenNumberFunctor;
struct ResolveContext;
struct SecBufferList;
struct TestStorable;

// classes

class Attribute2;
class AttributeQueue2;
class AttributeValue2;
class Attributes2;
class ClientThread;
class RegTypeString;
class ServerThread;
class TestContext;

// global variables

HeapAllocator defaultAllocator;
struct _static_thread_data __static_thread_data_list_start[];
struct _static_thread_data __static_thread_data_list_end[];
static const int kAttrVectorSize = 0;
static const int kAttrVectorDelta = 20;
static const int kAttrPoolSize = 1000;
static const int kAttrMediumPoolSize = 4000;
static const int kAttrLargePoolSize = 10000;
static const int kAttrSmallStringSize = 32;
 CoreMemoryPool;
const char kTestString[] = "Core File Test";
const char text[] = "This is a test string\n";

// global functions

void operator delete (void* memory);
void operator delete[] (void* memory);
void* core_malloc(unsigned int size);
void* core_malloc_debug(unsigned int size, const char* filename, int line);
void* core_realloc(void* memory, unsigned int size);

void* core_realloc_debug(
    void* memory,
    unsigned int size,
    const char* filename,
    int line
);

void core_free(void* memory);
void core_alloc_use();
void core_alloc_unuse();
int core_check_heap();
int core_check_ptr(void* ptr, int size);
void* operator new (std::size_t size);
void* operator new[] (std::size_t size);

DECLARE_JNI_CLASS_METHOD_CORE(
    void,
    NsdDiscoveryHandler,
    onServiceFound,
    JniIntPtr nativeHandler,
    jobject serviceInfo
);

DECLARE_JNI_CLASS_METHOD_CORE(
    void,
    NsdDiscoveryHandler,
    onServiceLost,
    JniIntPtr nativeHandler,
    jobject serviceInfo
);

DECLARE_JNI_CLASS_METHOD_CORE(
    void,
    NsdResolveHandler,
    onServiceResolved,
    JniIntPtr nativeHandler,
    jobject serviceInfo
);

DECLARE_JNI_CLASS_METHOD_CORE(
    void,
    NsdRegistrationHandler,
    onRegistrationFailed,
    JniIntPtr nativeHandler,
    jobject serviceInfo,
    int errorCode
);

DECLARE_JNI_CLASS_METHOD_CORE(
    void,
    NsdRegistrationHandler,
    onServiceRegistered,
    JniIntPtr nativeHandler,
    jobject serviceInfo
);

DECLARE_JNI_CLASS_METHOD_CORE(
    int,
    SSLChannel,
    writeEncrypted,
    JniIntPtr nativeContext,
    jbyteArray data,
    int count
);

DECLARE_JNI_CLASS_METHOD_CORE(
    int,
    SSLChannel,
    readEncrypted,
    JniIntPtr nativeContext,
    jbyteArray data,
    int start,
    int count
);

static void* ThreadEntry(void* param);
static void* CocoaThreadEntry(void* param);
bool GetMacOSVersion(int& major, int& minor, int& patch);
bool IsAtLeastMacOSVersion(int wantMajor, int wantMinor, int wantPatch = 0);
static int ToNativePriority(ThreadPriority priority);
static ThreadPriority FromNativePriority(int ctlPrio);
static void ThreadEntry(void* param);
Core::uint32 CLK_gethtime();
static void TLSDestructor(void* p);
static void ThreadEntry(void* param);
int vsscanf(const char* str, const char* format, va_list ap);
int sscanf(const char* s, const char* format, ...);
int strcasecmp(char const* s1, char const* s2);
JNIEXPORT jint JNI_OnLoad(JavaVM* vm, void* reserved);

int getaddrinfo(
    const char* nodename,
    const char* servname,
    const struct addrinfo* hints,
    struct addrinfo** res
);

void freeaddrinfo(struct addrinfo* ai);
int accept(int s, struct sockaddr* addr, socklen_t* addrlen);
int bind(int sockfd, const struct sockaddr* addr, socklen_t addrlen);
int shutdown(int s, int how);
int close(int s);
int connect(int s, const struct sockaddr* name, socklen_t namelen);
int getsockname(int s, struct sockaddr* name, socklen_t* namelen);
int getpeername(int s, struct sockaddr* name, socklen_t* namelen);

int setsockopt(
    int s,
    int level,
    int optname,
    const void* optval,
    socklen_t optlen
);

int getsockopt(int s, int level, int optname, void* optval, socklen_t* optlen);
int listen(int s, int backlog);
int recv(int s, void* mem, size_t len, int flags);

int recvfrom(
    int s,
    void* mem,
    size_t len,
    int flags,
    struct sockaddr* from,
    socklen_t* fromlen
);

int send(int s, const void* data, size_t size, int flags);

int sendto(
    int s,
    const void* data,
    size_t size,
    int flags,
    const struct sockaddr* to,
    socklen_t tolen
);

int socket(int domain, int type, int protocol);

int select(
    int maxfdp1,
    fd_set* readset,
    fd_set* writeset,
    fd_set* exceptset,
    struct timeval* timeout
);

int ioctl(int s, long cmd, void* argp);
int read(int s, void* mem, size_t len);
int write(int s, const void* data, size_t size);
int fcntl(int s, int cmd, int val);
DEFINE_STATIC_SINGLETON(OpenSSLInitializer);

static void DNSSD_API DNSServiceRegisterReplyHandler(
    DNSServiceRef sdRef,
    DNSServiceFlags flags,
    DNSServiceErrorType errorCode,
    const char* name,
    const char* _regtype,
    const char* domain,
    void* context
);

static void DNSSD_API DNSServiceResolveReplyHandler(
    DNSServiceRef sdRef,
    DNSServiceFlags flags,
    uint32_t interfaceIndex,
    DNSServiceErrorType errorCode,
    const char* fullname,
    const char* hosttarget,
    uint16_t port,
    uint16_t txtLen,
    const char* txtRecord,
    void* context
);

static void DNSSD_API DNSServiceBrowseReplyHandler(
    DNSServiceRef sdRef,
    DNSServiceFlags flags,
    uint32_t interfaceIndex,
    DNSServiceErrorType errorCode,
    const char* serviceName,
    const char* _regtype,
    const char* replyDomain,
    void* context
);

static void ToNativeThreadPriority(
    int& policy,
    sched_param& param,
    ThreadPriority priority
);

static void TLSDestructor(void* p);
static void* ThreadEntry(void* param);
static CString64 addNamespace(CStringPtr name, bool global);
static void* core_private_alloc(size_t size);
static const char* core_get_debug_filename(const char* filename);
int close(SocketID socket);
int ioctl(Core::Platform::SocketID, unsigned long request, ...);
int close(Core::Platform::SocketID socket);
int ioctl(Core::Platform::SocketID, unsigned long request, ...);
static int ToNativeThreadPriority(ThreadPriority priority);
static ThreadPriority FromNativePriority(int winPrio);
static bool WaitForHandle(void* handle, uint32 milliseconds);
static DWORD WINAPI ThreadEntry(LPVOID param);
DEFINE_RECURSIVE_READ_WRITE_LOCK(Win32RecursiveReadWriteLock);
LOG_MODULE_REGISTER(CoreThread, LOG_LEVEL_DBG);
static int ToNativePriority(ThreadPriority priority);
static ThreadPriority FromNativePriority(int zephyrPrio);
DEFINE_OBJECTPOOL_SIZE(Attribute2, CoreMemoryPool, kAttrLargePoolSize);

kAttrPoolSize DEFINE_OBJECTPOOL_SIZE(
    Attributes2,
    CoreMemoryPool,
    kAttrMediumPoolSize
);

static kAttrPoolSize static kAttrPoolSize CoreMemoryPool gSmallStringPool(
    kAttrSmallStringSize,
    kAttrPoolSize,
    "SmallStringPool"
);

DEFINE_STATIC_SINGLETON(FileIOManager);
DEFINE_STATIC_SINGLETON(Logger);
DEFINE_STATIC_SINGLETON(Core::Portable::SettingFile);
DEFINE_STATIC_SINGLETON(PluginManager);
DEFINE_STATIC_SINGLETON(DpiSetting);
DEFINE_STATIC_SINGLETON(BitmapManager);
DEFINE_STATIC_SINGLETON(FontManager);
DEFINE_STATIC_SINGLETON(StaticThemePainter);
DEFINE_STATIC_SINGLETON(StyleManager);
DEFINE_STATIC_SINGLETON(ThemePainter);
DEFINE_STATIC_SINGLETON(ViewBuilder);
void* align_pointer(void* buffer, uint32 alignment);
DEFINE_INITIALIZER(CoreFormatter);
void* core_malloc(unsigned int size);
void* core_malloc_debug(unsigned int size, const char* filename, int line);
void* core_realloc(void* memory, unsigned int size);

void* core_realloc_debug(
    void* memory,
    unsigned int size,
    const char* filename,
    int line
);

void core_free(void* memory);
void core_alloc_use();
void core_alloc_unuse();
int core_check_heap();
int core_check_ptr(void* ptr, int size);
INLINE void* operator new (size_t size, const char* filename, int line);
INLINE void operator delete (void* memory, const char* filename, int line);
INLINE void* operator new[] (size_t size, const char* filename, int line);
INLINE void operator delete[] (void* memory, const char* filename, int line);
DEFINE_INITIALIZER(RegisterAllocatorTest);
DEFINE_INITIALIZER(RegisterAtomicTest);
DEFINE_INITIALIZER(RegisterCrcTest);
DEFINE_INITIALIZER(RegisterCoreCrtTest);
DEFINE_INITIALIZER(RegisterDequeTest);
DEFINE_INITIALIZER(RegisterFixedDequeTest);
DEFINE_INITIALIZER(RegisterFileTest);
static static DEFINE_CONTAINER_PREDICATE_OBJECT(EvenNumberPredicate, int, i);
DEFINE_INITIALIZER(RegisterLinkedListTest);
DEFINE_INITIALIZER(RegisterNetworkTest);
DEFINE_INITIALIZER(RegisterSocketTest);
DEFINE_INITIALIZER(RegisterStorableTest);
DEFINE_INITIALIZER(RegisterStringTest);
DEFINE_STATIC_SINGLETON(TestRegistry);
int main(int argc, char* argv[]);
DEFINE_INITIALIZER(RegisterThreadTest);
DEFINE_INITIALIZER(RegisterLockTest);
DEFINE_INITIALIZER(RegisterSignalTest);
DEFINE_INITIALIZER(RegisterTimeTest);
DEFINE_INITIALIZER(RegisterTreeSetTest);
static static DEFINE_CONTAINER_PREDICATE_OBJECT(EvenNumberPredicate, int, i);
DEFINE_INITIALIZER(RegisterVectorTest);

// macros

#define ADD_CORE_CLASS(Class)
#define ADD_CORE_CLASSINFO(VarName)
#define ADD_CORE_CLASS_(Class)
#define ALIGNED_MALLOC
#define ARGUMENT_TYPE(a)
#define ARRAY_COUNT(a)
#define ASSERT_COMPATIBLE_RGB565(d1, d2)
#define ASSERT_COMPATIBLE_RGBA(d1, d2)
#define ASSERT_COMPATIBLE_SIZE(d1, d2)
#define ATTRIBUTE_POOL_ENABLED
#define BEGIN_CORE_CLASS(id, Class)
#define BEGIN_CORE_CLASSINFO_BUNDLE(versionInfo)
#define BEGIN_CORE_CLASSINFO_BUNDLE_(bundleName)
#define BEGIN_CORE_CLASS_
#define BEGIN_ENUMINFO(name)
#define BEGIN_PARAMINFO(name)
#define BUILD_FOLDER_NAME
#define CLASS_TYPE_GAMECORE
#define CONFIG_TOP_PRIORITY
#define CONTENT_FLAG_NONE
#define CONTENT_FLAG_SSI
#define CONTENT_TYPE_BINARY
#define CONTENT_TYPE_HTML
#define CONTENT_TYPE_PNG
#define CORE_AUTHOR_COPYRIGHT
#define CORE_AUTHOR_NAME
#define CORE_BIG_ENDIAN
#define CORE_BITMAP_FORMAT_BGRA
#define CORE_BITMAP_FORMAT_RGBA
#define CORE_BITMAP_PLATFORM_FORMAT
#define CORE_BUILD_TIMESTAMP
#define CORE_CLASS_PREFIX
#define CORE_COPYRIGHT_YEAR
#define CORE_DOUBLE_AS_FLOAT
#define CORE_EXTERNAL_PLATFORM_HEADER
#define CORE_EXTERNAL_PLATFORM_IMPLEMENTATION
#define CORE_EXTERNAL_PLATFORM_IMPLEMENTATION_HEADER(FILEPREFIX)
#define CORE_FEATURE_IMPLEMENTATION_CMSIS
#define CORE_FEATURE_IMPLEMENTATION_LWIP
#define CORE_FEATURE_IMPLEMENTATION_OPENSSL
#define CORE_FEATURE_IMPLEMENTATION_POSIX
#define CORE_FEATURE_UNIMPLEMENTED
#define CORE_HAS_ATOMICS
#define CORE_HAS_ATOMIC_STACK
#define CORE_HAVE_GCC_BSWAP16
#define CORE_HAVE_GCC_BSWAP32
#define CORE_HAVE_GCC_BSWAP64
#define CORE_IFADDRS_HAVE_DATA_MEMBER
#define CORE_IFADDRS_HAVE_DATA_MEMBER
#define CORE_IFADDRS_HAVE_NETMASK_MEMBER
#define CORE_IFADDRS_HAVE_NETMASK_MEMBER
#define CORE_INDENT(count)
#define CORE_INTERPOLATOR_REGISTRY_ENABLED
#define CORE_LITTLE_ENDIAN
#define CORE_MALLOC_AVAILABLE
#define CORE_MALLOC_ENABLED
#define CORE_MEMORYPOOL_DEADLAND_FILL
#define CORE_MEMSTREAM_EXPONENTIAL_GROWTH
#define CORE_NATIVE_BYTEORDER
#define CORE_PLATFORM_IMPLEMENTATION
#define CORE_PLATFORM_IMPLEMENTATION_HEADER(FILEPREFIX)
#define CORE_PLATFORM_INCLUDE_EVALUATOR_(FILEPREFIX, PLATFORMDIR, FILESUFFIX)
#define CORE_POOLALLOCATOR_USE_BITFIELD
#define CORE_PRINT(s)
#define CORE_PRINTF(s, ...)
#define CORE_PROFILE
#define CORE_PROFILE
#define CORE_PROFILE
#define CORE_REGISTER_TEST(T)
#define CORE_STATIC_TEMPLATE_MEMBER
#define CORE_TEST_FAILED(s)
#define CORE_TEST_MESSAGE(s)
#define CORE_TEST_REGISTRY_ENABLED
#define CORE_VECTOR_EXPONENTIAL_GROWTH
#define CORE_VERSION_BUILD
#define CORE_VERSION_MAJOR
#define CORE_VERSION_MINOR
#define CORE_VERSION_REVISION
#define CORE_VERSION_STRING
#define CRLF
#define CTL_DEFAULT_PRIORITY
#define CTL_DEFAULT_STACK
#define CTL_THREAD_STATE_FINISHED
#define CTL_THREAD_STATE_INIT
#define CTL_THREAD_STATE_RUNNING
#define DEBUG
#define DEBUG_FOCUS
#define DEBUG_LOG
#define DEBUG_LOG
#define DEBUG_LOG
#define DEBUG_LOG
#define DEBUG_LOG
#define DEBUG_LOG
#define DEBUG_LOG
#define DEBUG_LOG
#define DEBUG_LOG
#define DEBUG_LOG
#define DEBUG_LOG
#define DEBUG_REDRAW
#define DEBUG_SSL
#define DECLARE_CORE_CLASS(id, Class, Base)
#define DECLARE_CORE_CLASS_(id, Class)
#define DECLARE_CORE_VIEWCLASS(className)
#define DECLARE_ENUMINFO(name)
#define DECLARE_JNI_CLASS(ClassName, classPath)

#define DECLARE_JNI_CLASS_METHOD( \
    package, \
    ReturnType, \
    ClassName, \
    MethodName, \
    ... \
)

#define DECLARE_JNI_CLASS_METHOD_CORE(ReturnType, ClassName, MethodName, ...)
#define DECLARE_JNI_CLASS_METHOD_CORE_NO_ARGS(ReturnType, ClassName, MethodName)

#define DECLARE_JNI_CLASS_METHOD_NO_ARGS( \
    package, \
    ReturnType, \
    ClassName, \
    MethodName \
)

#define DECLARE_JNI_CONSTRUCTOR(methodName, ...)
#define DECLARE_JNI_FIELD(type, fieldName)
#define DECLARE_JNI_METHOD(returnType, methodName, ...)
#define DECLARE_JNI_STATIC_METHOD(returnType, methodName, ...)

#define DECLARE_STATIC_THREAD( \
    partition, \
    owner, \
    classname, \
    name, \
    stackSize, \
    options \
)

#define DECLARE_STATIC_THREAD_(owner, name, stackSize, options)
#define DEFAULT_VERSION
#define DEFINE_CONTAINER_PREDICATE(FunctionName, Type, var)
#define DEFINE_CONTAINER_PREDICATE_OBJECT(FunctionName, Type, var)

#define DEFINE_CORE_CLASSINFO( \
    VarName, \
    flags, \
    classType, \
    displayName, \
    classID, \
    classAttributes, \
    createFunction \
)

#define DEFINE_CORE_VERSIONINFO(Name, Vendor, Version, Copyright, URL)
#define DEFINE_ENUM(Name)
#define DEFINE_GAMECORE_CLASS(VarName, displayName, classID, createInstance)
#define DEFINE_INITIALIZER(Name)
#define DEFINE_JNI_CLASS(ClassName)
#define DEFINE_JNI_CONSTRUCTOR(methodName, signature)
#define DEFINE_JNI_DEFAULT_CONSTRUCTOR
#define DEFINE_JNI_FIELD(fieldName, signature)
#define DEFINE_JNI_METHOD(methodName, signature)
#define DEFINE_JNI_METHOD_NAME(methodName, javaName, signature)
#define DEFINE_JNI_STATIC_METHOD(methodName, signature)
#define DEFINE_JNI_STATIC_METHOD_NAME(methodName, javaName, signature)
#define DEFINE_OBJECTPOOL(Class, Pool)
#define DEFINE_OBJECTPOOL_SIZE(Class, Pool, count)
#define DEFINE_OBSERVER(type)
#define DEFINE_OBSERVER_OVERRIDE(type)
#define DEFINE_RECOGNIZERPOOL(Class)
#define DEFINE_RECURSIVE_READ_WRITE_LOCK(ImplementationClass)
#define DEFINE_SINGLETON(T)
#define DEFINE_STATIC_SINGLETON(T)
#define DEFINE_TERMINATOR(Name)
#define DEFINE_VECTOR_COMPARE(FunctionName, Type, lhs, rhs)
#define DEFINE_VECTOR_COMPARE_OBJECT(FunctionName, Type, lhs, rhs)
#define DELEGATE_CORE_CLASS(Base)
#define ENDLINE
#define END_CORE_CLASS(Base)
#define END_CORE_CLASSINFO_BUNDLE
#define END_CORE_CLASSINFO_BUNDLE_(bundleName, versionInfo)
#define END_DECLARE_JNI_CLASS(ClassName)
#define END_DEFINE_JNI_CLASS
#define END_ENUMINFO
#define END_PARAMINFO
#define EndFor
#define FORMAT_INT64
#define FOUR_CHAR_ID(a, b, c, d)
#define ForEachCStringToken(string, delimiters, result)
#define ForEachCStringTokenInplace(string, delimiters, result)
#define ForEachParamInfo(info)
#define ForEachPlugInClass(codeResources, classInfo)
#define ForEachRGBA(dstData, dst, srcData, src)
#define ForEachRectFast(rectList, T, var)
#define HAVE_ALIGNED_CRTDBG_H
#define HAVE_CRTDBG_H
#define HAVE_DEBUG_MALLOC_H
#define IFF_RUNNING
#define IFF_RUNNING
#define IMPORT_BINARY_RESOURCE(SymbolName)
#define INADDR_NONE
#define INADDR_NONE
#define INLINE_UID(data1, data2, data3, a, b, c, d, e, f, g, h)
#define INVALID_SOCKET
#define INVALID_SOCKET
#define INVALID_SOCKET
#define IntrusiveListForEach(list, T, var)
#define IntrusiveListForEachReverse(list, T, var)
#define LAZYCAT(a, b)
#define LAZYCAT_HELP(a, b)
#define LOG_SECURITY_BUFFERS
#define LOG_TOTAL_BITMAP_MEMORY
#define LONG_STORAGE_DELAY
#define LWIP_COMPAT_SOCKETS
#define ListForEach(list, T, var)
#define ListForEachReverse(list, T, var)
#define MAKE_BIG_ENDIAN(v)
#define MAKE_LITTLE_ENDIAN(v)
#define MAX_WBITS
#define MODIFY_INPLACE
#define MULTIPLY(c, a)
#define NEW
#define NEW
#define OL_ARG(a)
#define OL_TEMPLATE(a)
#define OSATOMIC_USE_INLINED
#define PARAM_ALIAS(tag, name, flags)
#define PARAM_ALIAS_(tag, name, flags, title, shortTitle)
#define PARAM_BIPOLAR
#define PARAM_COLOR(tag, name, flags)
#define PARAM_COLOR_(tag, name, flags, title, shortTitle)
#define PARAM_DELTA

#define PARAM_FLOAT( \
    tag, \
    name, \
    min, \
    max, \
    default, \
    delta, \
    units, \
    curve, \
    mid, \
    flags \
)

#define PARAM_FLOAT_( \
    tag, \
    name, \
    min, \
    max, \
    default, \
    delta, \
    units, \
    curve, \
    mid, \
    flags, \
    title, \
    shortTitle \
)

#define PARAM_INT(tag, name, min, max, default, units, curve, mid, flags)

#define PARAM_INT_( \
    tag, \
    name, \
    min, \
    max, \
    default, \
    units, \
    curve, \
    mid, \
    flags, \
    title, \
    shortTitle \
)

#define PARAM_LINKABLE
#define PARAM_LIST(tag, name, stringList, default, flags)
#define PARAM_LIST_(tag, name, stringList, default, flags, title, shortTitle)
#define PARAM_MUTABLE
#define PARAM_PRIVATE
#define PARAM_READONLY
#define PARAM_STORABLE
#define PARAM_STRING(tag, name, flags)
#define PARAM_STRING_(tag, name, flags, title, shortTitle)
#define PARAM_TOGGLE(tag, name, default, units, flags)
#define PARAM_TOGGLE_(tag, name, default, units, flags, title, shortTitle)
#define PARAM_USERFLAG1
#define PARAM_USERFLAG2
#define PATH_CHAR
#define PLATFORM_THREAD(name)
#define PLATFORM_THREAD_STACK(name)
#define PRESERVE_FLOATS
#define PROPERTY_BOOL(member, Method)
#define PROPERTY_BY_REFERENCE(type, member, Method)
#define PROPERTY_BY_VALUE(type, member, Method)
#define PROPERTY_CSTRING_BUFFER(size, member, Method)
#define PROPERTY_FLAG(var, value, method)
#define PROPERTY_INDEX_FLAG32(var, method)
#define PROPERTY_INDEX_FLAG64(var, method)
#define PROPERTY_OBJECT(Class, member, Method)
#define PROPERTY_POINTER(type, member, Method)
#define PROPERTY_READONLY_FLAG(var, value, method)
#define PROPERTY_VARIABLE(type, member, Method)
#define RECOGNIZER_POOL_SIZE
#define RELEASE
#define REVERT(c, a)
#define SD_BOTH
#define SD_BOTH
#define SIMULATE_LONG_STORAGE
#define SKIP_COMMENTS
#define SOCKET
#define SOCKET_DEFINED
#define SOCKET_DEFINED
#define SOCKET_ERROR
#define SOCKET_ERROR
#define STRINGIFY(s)
#define STRINGIFY_HELPER(s)
#define STRING_STACK_SPACE_MAX
#define TCP_NODELAY
#define TCP_NODELAY
#define TestPrintf
#define UNIQUE_IDENT(prefix)
#define VectorForEach(items, T, var)
#define VectorForEachFast(items, T, var)
#define VectorForEachReverse(items, T, var)
#define plot(x, y, b)

Detailed Documentation

Macros

#define ARRAY_COUNT(a)

Count number of items in array.

#define BEGIN_ENUMINFO(name)

Begin enumeration.

#define CORE_BIG_ENDIAN

big endian (Motorola)

#define CORE_EXTERNAL_PLATFORM_IMPLEMENTATION_HEADER(FILEPREFIX)

Generate platform-specific include path for external implementation classes.

#define CORE_LITTLE_ENDIAN

little endian (Intel)

#define CORE_NATIVE_BYTEORDER

Windows Intel, OMAP-L138, etc.

#define CORE_PLATFORM_IMPLEMENTATION_HEADER(FILEPREFIX)

Generate platform-specific include path for implementation classes in external platform implementation directory.

#define DECLARE_ENUMINFO(name)

Declare enumeration.

#define DECLARE_STATIC_THREAD( \
    partition, \
    owner, \
    classname, \
    name, \
    stackSize, \
    options \
)

Declare static core thread and stack storage.

Default priority is the lowest available in the system. Note that actual stack size may vary from declaration.

Parameters:

partition

memory partition the Core::Threads::Thread instance is allocated from

owner

name of thread who will start() and own this thread (eg. fwapp)

classname

name of custom thread derived from Core::Thread

name

name of thread instance

stackSize

target stack size

options

options passed to K_THREAD_DEFINE (e.g. K_USER)

#define DEFINE_CONTAINER_PREDICATE(FunctionName, Type, var)

Define predicate function for element in a container that is a pointer to an object.

#define DEFINE_CONTAINER_PREDICATE_OBJECT(FunctionName, Type, var)

Define predicate for element in a container that is an object or build-in type.

#define DEFINE_ENUM(Name)

Define compiler-independent enum type.

#define DEFINE_INITIALIZER(Name)

Define initialization function.

#define DEFINE_RECURSIVE_READ_WRITE_LOCK(ImplementationClass)

Wrapper class around non-recursive ReadWriteLock implementations, allowing recursive locking.

#define DEFINE_TERMINATOR(Name)

Define terminate function.

#define DEFINE_VECTOR_COMPARE(FunctionName, Type, lhs, rhs)

Define compare function for two elements in a vector that are pointers to object.

#define DEFINE_VECTOR_COMPARE_OBJECT(FunctionName, Type, lhs, rhs)

Define compare function for two elements in a vector that are objects or build-in types.

#define ENDLINE

End of line.

#define END_ENUMINFO

End enumeration.

#define EndFor

End of iteration macros.

#define FORMAT_INT64

printf placeholder for 64 Bit integer.

#define FOUR_CHAR_ID(a, b, c, d)

Define four-character identifier.

Some compilers don’t support multi-character constants.

#define ForEachCStringToken(string, delimiters, result)

Helper macro for iterating C-String tokens (copies string).

#define ForEachCStringTokenInplace(string, delimiters, result)

Helper macro for iterating C-String tokens (modifies string inplace).

#define IMPORT_BINARY_RESOURCE(SymbolName)

Import binary resource linked with the program.

Symbol names match with framework tools and CMake macros.

#define INLINE_UID(data1, data2, data3, a, b, c, d, e, f, g, h)

Macro for inline UID definition.

#define LAZYCAT(a, b)

Lazy concatenation (arguments are evaluated before concatenation)

#define ListForEach(list, T, var)

Iterate trough list (realtime safe, no memory allocations).

#define ListForEachReverse(list, T, var)

Iterate trough list in reverse order (realtime safe, no memory allocations).

#define PROPERTY_BOOL(member, Method)

Define boolean member.

#define PROPERTY_BY_REFERENCE(type, member, Method)

Setter/getter for already defined member (by reference).

#define PROPERTY_BY_VALUE(type, member, Method)

Setter/getter for already defined member (by value).

#define PROPERTY_CSTRING_BUFFER(size, member, Method)

Define C-string buffer member (by reference).

#define PROPERTY_FLAG(var, value, method)

Define flag member.

#define PROPERTY_INDEX_FLAG32(var, method)

Define indexed flag member (32 bit integer).

#define PROPERTY_INDEX_FLAG64(var, method)

Define indexed flag member (64 bit integer).

#define PROPERTY_OBJECT(Class, member, Method)

Define object member (by reference).

#define PROPERTY_POINTER(type, member, Method)

Define pointer member (by address).

#define PROPERTY_READONLY_FLAG(var, value, method)

Define read-only flag member.

#define PROPERTY_VARIABLE(type, member, Method)

Define simple member variable (by value).

#define STRINGIFY(s)

Stringify numeric definiton.

#define STRING_STACK_SPACE_MAX

Max.

size of string buffer on stack.

#define UNIQUE_IDENT(prefix)

Generate unique identifier at file scope.

#define VectorForEach(items, T, var)

Iterate trough vector (realtime safe, no memory allocation).

#define VectorForEachFast(items, T, var)

Iterate trough vector without checking index (uses pointer arithmetic, doesn’t call at ()).

#define VectorForEachReverse(items, T, var)

Iterate trough vector in reverse order (realtime safe).