1#undef __ae2f_MACRO_GENERATED
2#define __ae2f_MACRO_GENERATED 1
7#undef __ae2f_MACRO_GENERATED
8#define __ae2f_MACRO_GENERATED 1
10#undef __ae2f_MACRO_GENERATED
11#define __ae2f_MACRO_GENERATED 1
12#include <ae2f/Float.h>
13#undef __ae2f_MACRO_GENERATED
14#define __ae2f_MACRO_GENERATED 1
15#include <ae2f/errGlob.h>
16#undef __ae2f_MACRO_GENERATED
17#define __ae2f_MACRO_GENERATED 1
19#undef __ae2f_MACRO_GENERATED
20#define __ae2f_MACRO_GENERATED 1
22#include <ae2f/Pack/Beg.h>
23#undef __ae2f_MACRO_GENERATED
24#define __ae2f_MACRO_GENERATED 1
25#include <ae2f/Macro.h>
26#undef __ae2f_MACRO_GENERATED
27#define __ae2f_MACRO_GENERATED 1
28#include <ae2f/Guide.h>
29#undef __ae2f_MACRO_GENERATED
30#define __ae2f_MACRO_GENERATED 1
33#undef __ae2f_MACRO_GENERATED
34#define __ae2f_MACRO_GENERATED 1
37
38
39
40
53 ae2f_mMMap*
const mmap
55 ,
const size_t*
const lens
57 , size_t*
const opt_ret_sz
64 const size_t*
const lens,
66 ae2f_FREE(free, ae2f_mMMapDel) ae2f_mMMap**
const ret_mmap
71 const ae2f_mMMap*
const mmap,
73 const size_t*
const idxs,
78 const size_t dim,
const size_t*
const lens
87#define ae2f_mMMapInit __ae2f_mMMapInit
88#define ae2f_mMMapMk __ae2f_mMMapMk
89#define ae2f_mMMapDel __ae2f_mMMapDel
90#define ae2f_mMMapSz __ae2f_mMMapSz
91#define ae2f_mMMapFieldIdx __ae2f_mMMapFieldIdx
94#undef __ae2f_MACRO_GENERATED
95#define __ae2f_MACRO_GENERATED 1
97#undef __ae2f_MACRO_GENERATED
98#define __ae2f_MACRO_GENERATED 1
104#define ae2f_mMMapDimLen(mmap, ...)
108#define ae2f_mMMapField(mmap, ...)
132 ae2f_mMMapInit_t m_initstack;
135#include <ae2f/Pack/End.h>
136#undef __ae2f_MACRO_GENERATED
137#define __ae2f_MACRO_GENERATED 1
145#include <ae2f/MMap/MMap.h>
146#undef __ae2f_MACRO_GENERATED
147#define __ae2f_MACRO_GENERATED 1
153#define __ae2f_mMMapSz_imp(
161)\
162{
167 v_mapsz.m_dim = (dim);
169 while(v_mapsz.m_dim--) {
170 v_mapsz.m_ret *= (lens)[(v_mapsz).m_dim];
173 assert
(v_mapsz.m_dim == -1
);
176 v_mapsz.m_ret * sizeof(ae2f_float_t)
177 + ((dim)) * sizeof(size_t)
181}
183#define __ae2f_mMMapSz(
191)\
192{
194 assert
(0
&& "lens is not good");
195 (ret) && (*(ret) = -1
);
199 (ret) && (*(ret) = v_sz.m_ret);
201}
205
206
207
208
209
210
211
212
213
214
215constextendedfun size_t _ae2f_mMMapSz(
225 __ae2f_mMMapSz_imp(v_sz, dim, lens);
232#define __ae2f_mMMapFieldIdx_imp(
241)\
242{
243 assert
((mmap) && "mmap is null");
250 for(v_fidx.m_i = 0
; v_fidx.m_i < v_fidx.m_dim - 1
&& v_fidx.m_L; v_fidx.m_i++) {
252 v_fidx.m_I = (idxs)[v_fidx.m_dim - 1
- v_fidx.m_i] % v_fidx.m_L;
253 v_fidx.m_ret += v_fidx.m_I;
254 v_fidx.m_ret *= v_fidx.m_L;
257 if(v_fidx.m_i < v_fidx.m_dim - 1
)
259 assert
(0
&& "who are you");
270 v_fidx.m_dim = (mmap)->m_dim;
272 for(; v_fidx.m_i < v_fidx.m_dim - 1
; v_fidx.m_i++) {
276}
278#define __ae2f_mMMapFieldIdx(
287)\
288{
291 unless((idxs) && (mmap)) {
292 assert
(0
&& "nullptr from __ae2f_mMMapFieldIdx");
296 ae2f_mMMapFieldIdx_t v_idx;
298 *(ret) = v_idx.m_ret;
300}
306constextendedfun size_t _ae2f_mMMapFieldIdx(
307 const ae2f_mMMap* mmap,
315 ae2f_mMMapFieldIdx_t v_idx;
316 __ae2f_mMMapFieldIdx_imp(v_idx, mmap, dim, idxs);
323#define __ae2f_mMMapInit_imp(
332)\
333{
334 (mmap)->m_dim = (dim);
335 for(v_init.m_i = 0
; v_init.m_i < (dim); v_init.m_i++)
340}
342#define __ae2f_mMMapInit(
352)\
353{
354 if((ret_e) && *(ret_e))
356 else unless((mmap) && (lens))
359 ae2f_mMMapInit_t v_init;
361 (opt_sz) && (*(opt_sz) = v_init.m_ret);
363}
365#define __ae2f_mMMapMk_imp(
373){
374 assert
((lens) && "lens is null");
377 assert
((v_mk.m_initstack.m_ret != -1
) && "Sz has failed.");
378 assert
((v_mk.m_initstack.m_ret > sizeof(ae2f_mMMap)) && "Sz is fishy.");
381 if((v_mk.m_ptr = calloc(1
, v_mk.m_initstack.m_ret))) {
384 assert
(0
&& "allocation has failed");
386}
388#define __ae2f_mMMapMk(
397)\
398{
399 if(opt_ret_err && *(opt_ret_err));
400 else unless((lens) && (ret_mmap))
411 *(ret_mmap) = v_mk.m_ptr;
413}
415#define __ae2f_mMMapDel(
421){
423}
427#undef __ae2f_MACRO_GENERATED
429#define __ae2f_MACRO_GENERATED 0
#define ae2f_IS_SHARED
Is a library shared.
#define ae2f_structdef(key, name)
#define ae2f_structdef_v(key, name,...)
#define ae2f_reinterpret_cast(t, v)
#define unless(...)
Invokes when condition is false.
#define ae2f_extern
Suggests the existence of external variable or function, in naming of C. [non-mangling].
#define ae2f_CmpGetGt(a, b)
#define ae2f_CmpGetLs(a, b)
ae2f_eAnnCnnPool
Pooling type. See ae2f_AnnCnnPool.
@ ae2f_eAnnCnnPool_MIDDLE
Middle. respect the output vector's value.
@ ae2f_eAnnCnnPool_MAX
Max.
@ ae2f_eAnnCnnPool_MIN
Min.
@ ae2f_eAnnCnnPool_ADD
Add.
@ ae2f_eAnnCnnPool_AVG
Average.
ae2f_extern ae2f_SHAREDEXPORT ae2f_err_t ae2f_AnnCnnPool1d(const ae2f_float_t *inv, const size_t inc, ae2f_float_t *outv, size_t *opt_outc, const size_t window, const size_t stride, ae2f_eAnnCnnPool type) noexcept
ae2f_extern ae2f_SHAREDEXPORT ae2f_err_t ae2f_AnnCnnPool_imp(size_t dim, const ae2f_float_t *inv, const size_t *inc, size_t incc, ae2f_float_t *outv, size_t *opt_outc, size_t outcc, const size_t *window_opt, const size_t *stride_opt, ae2f_eAnnCnnPool type)
ae2f_extern ae2f_SHAREDEXPORT ae2f_err_t ae2f_AnnCnnPool(size_t dim, const ae2f_float_t *inv, const size_t *inc, size_t incc, ae2f_float_t *outv, size_t *opt_outc, size_t outcc, const size_t *window_opt, size_t windowcc, const size_t *stride_opt, ae2f_eAnnCnnPool type)
ae2f_SHAREDEXPORT ae2f_err_t ae2f_AnnCnnConv1d(const ae2f_float_t *infv, size_t infc, const ae2f_float_t *ingv, size_t ingc, ae2f_float_t *outv, size_t *opt_outc, size_t stride, size_t pad)
all vectors are suggested initiated as 0.
ae2f_SHAREDEXPORT ae2f_err_t ae2f_AnnCnnConv(size_t dim, const ae2f_float_t *infv, const size_t *infc, size_t infcc, const ae2f_float_t *ingv, const size_t *ingc, size_t ingcc, ae2f_float_t *outv, size_t *outc_opt, size_t outcc, const size_t *stride_opt, const size_t *pad_opt)
dim must be the dimension of mmaps, lengths of lists. This function is meant to be recursive....
#define ae2f_WhenC(...)
Appears when the current language is C++.
#define ae2f_WhenCXX(...)
Appears when the current language is C.
#define ae2f_NONE
Literally nothing.
int ae2f_CmpFunRet_t
A predefined returning data type for ae2f_fpCmp_t.
#define ae2f_FREE(...)
Use this marker to show the desired functions to effectively free the resources.
#define __ae2f_lvcheck_cc(v)
#define __ae2f_stdcheck_CC(v)
#define __ae2f_mMMapSz_imp(v_mapsz, dim, lens)
#define ae2f_mMMapDimLen(mmap,...)
Length vector for every dimension index.
#define __ae2f_mMMapMk_imp(v_mk, dim, lens)
#define __ae2f_mMMapSz(dim, lens, ret)
#define __ae2f_mMMapInit_imp(v_init, mmap, dim, lens)
#define __ae2f_mMMapFieldIdx_imp(v_fidx, mmap, dim, idxs)
ae2f_extern ae2f_SHAREDCALL void ae2f_mMMapMk(const size_t dim, const size_t *const lens, ae2f_err_t *const opt_ret_err, ae2f_FREE(free, ae2f_mMMapDel) ae2f_mMMap **const ret_mmap) noexcept
ae2f_extern ae2f_SHAREDCALL void ae2f_mMMapSz(const size_t dim, const size_t *const lens, size_t *const ret)
ae2f_extern ae2f_SHAREDCALL void ae2f_mMMapDel(ae2f_mMMap *mmap)
ae2f_extern ae2f_SHAREDCALL void ae2f_mMMapInit(ae2f_mMMap *const mmap, const size_t dim, const size_t *const lens, ae2f_err_t *const opt_ret_err, size_t *const opt_ret_sz) noexcept
ae2f_extern ae2f_SHAREDCALL void ae2f_mMMapFieldIdx(const ae2f_mMMap *const mmap, const size_t dim, const size_t *const idxs, size_t *const ret)
#define ae2f_errGlob_OK
The Operation you've wanted went successful.
#define ae2f_errGlob_ALLOC_FAILED
stdlib allocating functions (malloc, calloc, realloc) has been failed.
#define ae2f_errGlob_WRONG_OPERATION
Found that parameter sent by programmer is invalid. The operation may have been ceased while the midd...
uint8_t ae2f_err_t
Informs that this number represents the error.
#define ae2f_errGlob_PTR_IS_NULL
Failed to refer the pointer either l-value inside the function.
#define ae2f_errGlob_IMP_NOT_FOUND
Failed to find the function on preprocessor which is callable for some reason No operation has beed d...
#define __ae2f_MACRO_GENERATED