|
|
@@ -1,619 +0,0 @@
|
|
|
-//PROTOTYPES HOW TO USE ORDER ELEMENTS
|
|
|
-#include <limits.h>
|
|
|
-
|
|
|
-void ARDUINO_ARRAY_INDEX_TABLE__SYNC_CURRENT( //when added to main table - do it
|
|
|
- //MAIN_TABLE_T, MAIN_TABLE_A,
|
|
|
- //optional ARDUINO_ARRAY_ASSOC_TABLE_S ARDUINO_ARRAY_ASSOC_TABLE_A,
|
|
|
- ARDUINO_ARRAY_INDEX_TABLE_S* ARDUINO_ARRAY_INDEX_TABLE_A,
|
|
|
- ARDUINO_ATTR_ARRAY_S* ARDUINO_ATTR_ARRAY_A
|
|
|
- //ASSOC TABLE
|
|
|
-
|
|
|
- ) {
|
|
|
-
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-void ARDUINO_ARRAY_ASSOC_TABLE_commit_added_element(
|
|
|
- ARDUINO_ATTR_ARRAY_S &ARDUINO_ATTR_ARRAY_A ,
|
|
|
- ARDUINO_ARRAY_ASSOC_TABLE_S* ARDUINO_ARRAY_ASSOC_TABLE_A,
|
|
|
- ARDUINO_ARRAY_INDEX_T* ARDUINO_ARRAY_INDEX_A,
|
|
|
- ARDUINO_ARRAY_PRIMARY_KET_T ARDUINO_ARRAY_PRIMARY_KET_A
|
|
|
- ) {
|
|
|
-
|
|
|
- int i = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A ;
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-void ARDUINO_ATTR_ARRAY_S__commit_added_element(
|
|
|
- ARDUINO_ATTR_ARRAY_S &ARDUINO_ATTR_ARRAY_A ,
|
|
|
- ARDUINO_ARRAY_INDEX_CURRENT_T ARDUINO_ARRAY_INDEX_CURRENT_A //current index,
|
|
|
- ) { //when added new element call this func
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LAST_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A = ARDUINO_ARRAY_INDEX_CURRENT_A ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A = ARDUINO_ARRAY_INDEX_CURRENT_A + 1 ;
|
|
|
- if(ARDUINO_ARRAY_INDEX_CURRENT_A == ARDUINO_ARRAY_INDEX_CORRUPT ) {
|
|
|
- } else {
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A++ ;
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-void ARDUINO_ATTR_ARRAY_S__init( //to init attr list table[1]
|
|
|
- ARDUINO_ATTR_ARRAY_T &ARDUINO_ATTR_ARRAY_A,
|
|
|
- ARDUINO_ARRAY_INDEX_LIMIT_T ARDUINO_ARRAY_INDEX_LIMIT_A ,//current limit table
|
|
|
- ARDUINO_QUEUE_FLAG_T ARDUINO_QUEUE_FLAG_A
|
|
|
- ) {
|
|
|
-
|
|
|
-
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT)
|
|
|
- Serial.println("[#89 ] ARDUINO_ATTR_ARRAY_S__init "); Serial.print("] ARDUINO_QUEUE_FLAG_A[ ") ; Serial.print(ARDUINO_QUEUE_FLAG_A, BIN) ; Serial.print("] A&B [ ") ; Serial.print(ARDUINO_QUEUE_FLAG_A & ARDUINO_QUEUE_FLAG_INIT, BIN) ; Serial.print("] B & A [ ") ; Serial.print( ARDUINO_QUEUE_FLAG_INIT & ARDUINO_QUEUE_FLAG_A , BIN) ; Serial.println(" ] ") ;
|
|
|
- #endif
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A = ARDUINO_ARRAY_INDEX_CURRENT_INIT ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LAST_A = ARDUINO_ARRAY_INDEX_LAST_INIT ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A = ARDUINO_ARRAY_COUNT_T_INIT ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LIMIT_A = ARDUINO_ARRAY_INDEX_LIMIT_A ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A = ARDUINO_ARRAY_INDEX_NEXT_INIT ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_time_min_run_MIN_A = ARDUINO_ARRAY_time_min_run_MIN_INIT ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_time_min_run_MIN_A = ARDUINO_ARRAY_INDEX_time_min_run_MIN_INIT ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_BACK_A = ARDUINO_ARRAY_ATTR_QUEUE_BACK_INIT ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_FRONT_A = ARDUINO_ARRAY_ATTR_QUEUE_FRONT_INIT ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A = ARDUINO_ARRAY_ATTR_QUEUE_PEEK_INIT ;
|
|
|
-
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A = ARDUINO_QUEUE_FLAG_INIT | ARDUINO_QUEUE_FLAG_A ; Serial.print(" [?78] [ARDUINO_QUEUE_FLAG_A] ?");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A , BIN); Serial.print("] ");
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_COUNT_A = ARDUINO_ARRAY_ATTR_QUEUE_COUNT_INIT; //kolejka elementow
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A = ARDUINO_QUEUE_FLAG_INITIALIZED ;//ARDUINO_ARRAY_ATTR_INDEX__TO_INITIALIZE ;
|
|
|
-
|
|
|
- if((ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A & ARDUINO_QUEUE_FLAG_INIT ) ) {
|
|
|
-
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT)
|
|
|
- Serial.print(" [ERROR] [HAS[ARDUINO_QUEUE_FLAG_INIT]]");
|
|
|
- #endif
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- } else {
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-void ARDUINO_ATTR_ARRAY_S__init_complete(ARDUINO_ATTR_ARRAY_T &ARDUINO_ATTR_ARRAY_A , ARDUINO_ARRAY_INDEX_CURRENT_T ARDUINO_ARRAY_INDEX_CURRENT_A ) {//
|
|
|
-
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A = ARDUINO_QUEUE_FLAG_INITIALIZED ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A = ARDUINO_ARRAY_ATTR_INDEX__INITIALIZED ;
|
|
|
- //ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LAST_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A ;
|
|
|
- //ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A ;
|
|
|
- //ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A
|
|
|
- ARDUINO_ATTR_ARRAY_S__commit_added_element(ARDUINO_ATTR_ARRAY_A , ARDUINO_ARRAY_INDEX_CURRENT_A ) ;
|
|
|
-//first init, add value, then complete
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-void ARDUINO_ARRAY_INDEX_TABLE_S__init( //to init table INDEX
|
|
|
- ARDUINO_ARRAY_INDEX_TABLE_T* ARDUINO_ARRAY_INDEX_TABLE_A,
|
|
|
- ARDUINO_ATTR_ARRAY_T &ARDUINO_ATTR_ARRAY_A,
|
|
|
- ARDUINO_ARRAY_INDEX_LIMIT_T ARDUINO_ARRAY_INDEX_LIMIT_A, //current limit table
|
|
|
- ARDUINO_QUEUE_FLAG_T ARDUINO_QUEUE_FLAG_A
|
|
|
- ) {
|
|
|
- ARDUINO_ATTR_ARRAY_S__init(ARDUINO_ATTR_ARRAY_A, ARDUINO_ARRAY_INDEX_LIMIT_A,ARDUINO_QUEUE_FLAG_A) ;
|
|
|
- ARDUINO_ARRAY_INDEX_CURRENT_T ARDUINO_ARRAY_INDEX_CURRENT_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A;
|
|
|
- if(ARDUINO_ARRAY_INDEX_CURRENT_A == ARDUINO_ARRAY_INDEX_CORRUPT) {
|
|
|
- ARDUINO_ARRAY_INDEX_TABLE_A[ARDUINO_ARRAY_INDEX_CURRENT_A].ARDUINO_ARRAY_INDEX_A = ARDUINO_ARRAY_INDEX_CORRUPT;
|
|
|
- ARDUINO_ATTR_ARRAY_S__commit_added_element( ARDUINO_ATTR_ARRAY_A , ARDUINO_ARRAY_INDEX_CURRENT_A); //__STORAGE_ARRAY_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A
|
|
|
- Serial.print("#83 ARDUINO_ARRAY_INDEX_TABLE_S__init ARDUINO_ARRAY_INDEX_NEXT_A[");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A); Serial.println("] [");
|
|
|
-
|
|
|
-
|
|
|
- } else {
|
|
|
- Serial.println("#83 ERROR element should be corrupted ARDUINO_ARRAY_INDEX_TABLE_S__init");
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- ARDUINO_ARRAY_INDEX_CURRENT_T ARDUINO_ARRAY_INDEX_TABLE_S__add( //ADD SOME INT ELEMENT OF ARDUINO_ARRAY_INDEX_A
|
|
|
- ARDUINO_ARRAY_INDEX_TABLE_T* ARDUINO_ARRAY_INDEX_TABLE_A,
|
|
|
- ARDUINO_ATTR_ARRAY_T &ARDUINO_ATTR_ARRAY_A,
|
|
|
- int ARDUINO_ARRAY_INDEX_A //ARDUINO_ARRAY_INDEX_T
|
|
|
- ) {
|
|
|
- ARDUINO_ARRAY_INDEX_CURRENT_T ARDUINO_ARRAY_INDEX_CURRENT_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A;
|
|
|
- if(ARDUINO_ARRAY_INDEX_CURRENT_A == ARDUINO_ARRAY_INDEX_CORRUPT) {
|
|
|
-
|
|
|
- ARDUINO_ARRAY_INDEX_TABLE_A[ARDUINO_ARRAY_INDEX_CURRENT_A].ARDUINO_ARRAY_INDEX_A = ARDUINO_ARRAY_INDEX_CORRUPT;
|
|
|
- ARDUINO_ATTR_ARRAY_S__commit_added_element( ARDUINO_ATTR_ARRAY_A , ARDUINO_ARRAY_INDEX_CURRENT_A); //__STORAGE_ARRAY_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A
|
|
|
- }
|
|
|
-
|
|
|
- ARDUINO_ARRAY_INDEX_CURRENT_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A ;
|
|
|
- #if defined(DISABLE_LOOP) || defined(DEBUG)
|
|
|
- Serial.print("#8592 ARDUINO_ARRAY_INDEX_TABLE_S__add ARDUINO_ARRAY_INDEX_A=[");
|
|
|
- Serial.print(ARDUINO_ARRAY_INDEX_A); Serial.print("] ARDUINO_ARRAY_INDEX_CURRENT_A=[");
|
|
|
- Serial.print(ARDUINO_ARRAY_INDEX_CURRENT_A); Serial.print("] ..after commit ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A=[");
|
|
|
-
|
|
|
- #endif
|
|
|
- ARDUINO_ARRAY_INDEX_TABLE_A[ARDUINO_ARRAY_INDEX_CURRENT_A].ARDUINO_ARRAY_INDEX_A = ARDUINO_ARRAY_INDEX_A;
|
|
|
- ARDUINO_ATTR_ARRAY_S__commit_added_element(ARDUINO_ATTR_ARRAY_A , ARDUINO_ARRAY_INDEX_CURRENT_A);
|
|
|
- #if defined(DISABLE_LOOP) || defined(DEBUG)
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A); Serial.println("] [");
|
|
|
- #endif
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-void ARDUINO_ARRAY_INDEX_TABLE_S__add_void(
|
|
|
- ARDUINO_ARRAY_INDEX_TABLE_T* ARDUINO_ARRAY_INDEX_TABLE_A,
|
|
|
- ARDUINO_ATTR_ARRAY_T &ARDUINO_ATTR_ARRAY_A,
|
|
|
- int ARDUINO_ARRAY_INDEX_A
|
|
|
- ){
|
|
|
- ARDUINO_ARRAY_INDEX_CURRENT_T ARDUINO_ARRAY_INDEX_CURRENT_A = ARDUINO_ARRAY_INDEX_TABLE_S__add( //ADD SOME INT ELEMENT OF ARDUINO_ARRAY_INDEX_A
|
|
|
- ARDUINO_ARRAY_INDEX_TABLE_A,
|
|
|
- ARDUINO_ATTR_ARRAY_A,ARDUINO_ARRAY_INDEX_A
|
|
|
- );
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-void ARDUINO_ATTR_ARRAY_S__display( //to init attr list table[1]
|
|
|
- ARDUINO_ATTR_ARRAY_T &ARDUINO_ATTR_ARRAY_A) {
|
|
|
-
|
|
|
- #if not defined(DISABLE_ANY_PRINT)
|
|
|
- Serial.println(" [#139 ARRAY_S__display] #CURRENT[");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A); Serial.print("] #LAST[");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LAST_A); Serial.print("] #COUNT[");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A ); Serial.print("] #LIMIT[");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LIMIT_A ); Serial.print("] #NEXT[");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A); Serial.print("] @time_min_run[");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_time_min_run_MIN_A ); Serial.print("] #time_run_#[");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_time_min_run_MIN_A );Serial.println("] ");
|
|
|
- Serial.print("] #QUEUE_FLAG_A#["); Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A, BIN);Serial.print("] [");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A & ARDUINO_QUEUE_FLAG_INIT) Serial.print(" +[INIT] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A & ARDUINO_QUEUE_FLAG_INITIALIZED) Serial.print(" +[INITIALIZED] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A & ARDUINO_QUEUE_FLAG_RESTRICT_INDEX) Serial.print(" +[RESTRICT_INDEX] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A & ARDUINO_QUEUE_FLAG_CAN_OVERWRITE) Serial.print(" +[CAN_OVERWRITE] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A & ARDUINO_QUEUE_FLAG_USE_ELEMENT_FLAG_T) Serial.print(" +[USE_ELEMENT_FLAG_T] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A & ARDUINO_QUEUE_FLAG_CANNOT_OVERWRITE) Serial.print(" +[CANNOT_OVERWRITE] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A & ARDUINO_QUEUE_FLAG_NOT_SPECIFIED) Serial.print(" +[NOT_SPECIFIED] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A & ARDUINO_QUEUE_FLAG_QUEUE) Serial.print(" +[QUEUE] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_QUEUE_FLAG_A & ARDUINO_QUEUE_FLAG_FULL_ONLY_POP) Serial.print(" +[FULL_ONLY_POP] ");
|
|
|
- Serial.println("] ");
|
|
|
- Serial.print("] #INDEX_OPTIONS_A#[");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A, BIN); Serial.print("] [");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__TO_INITIALIZE) Serial.print(" +[TO_INITIALIZE] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__INITIALIZED) Serial.print(" +[INITIALIZED] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__TO_COMMIT) Serial.print(" +[TO_COMMIT] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__TO_INCREMENT) Serial.print(" +[TO_INCREMENT] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__READY_TO_QUERY) Serial.print(" +[READY_TO_QUERY] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__INCREMENTED) Serial.print(" +[INCREMENTED] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__LOCK) Serial.print(" +[LOCK] ");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__HAS_ERRORS) Serial.print(" +[HAS_ERRORS] ");
|
|
|
-
|
|
|
- Serial.println("] ");
|
|
|
- Serial.print("] QUEUE_BACK[");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_BACK_A); Serial.print("] QUEUE_FRONT["); //ostatni zabrany element
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_FRONT_A); Serial.print("] QUEUE_PEEK[");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A); Serial.print("] QUEUE_COUNT["); //todo ostatni element zabierany
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_COUNT_A ); Serial.println("] ");//kolejka elementow
|
|
|
- #endif
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-void ARDUINO_ATTR_ARRAY_S__INDEX_NEXT_basic_rotate(ARDUINO_ATTR_ARRAY_T &ARDUINO_ATTR_ARRAY_A){
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LAST_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A ;
|
|
|
-
|
|
|
- if((ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A + 1) >= ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LIMIT_A) {
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A = ARDUINO_ARRAY_INDEX_FIRST ;
|
|
|
- } else ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A ++ ;
|
|
|
-
|
|
|
- if((ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_BACK_A + 1) >= ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LIMIT_A) {
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_BACK_A = ARDUINO_ARRAY_INDEX_FIRST ;
|
|
|
- } else ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_BACK_A ++ ;
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- //ARDUINO_ARRAY_INDEX_NEXT_T
|
|
|
-void ARDUINO_ATTR_ARRAY_S__INDEX_NEXT_rotate( //to maintain limit and set new indexes
|
|
|
- ARDUINO_ATTR_ARRAY_T &ARDUINO_ATTR_ARRAY_A ,
|
|
|
- // ARDUINO_QUEUE_FLAG_T ARDUINO_QUEUE_FLAG_A, bez semnsiu fagi
|
|
|
- ARDUINO_ARRAY_time_min_run_MIN_T ARDUINO_ARRAY_time_min_run_MIN_A //to provide index pointer to last
|
|
|
- ) {
|
|
|
- #if not defined(DISABLE_ANY_PRINT)
|
|
|
- Serial.print(" [#156 ARDUINO_ATTR_ARRAY_S__INDEX_NEXT_rotate] #CURRENT[");
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LIMIT_A <= 0) {
|
|
|
- Serial.print(" [#157] [ROTATE ERROR] [NOT SET] [ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LIMIT_A ] ");
|
|
|
- Serial.print(" [ROTATE_FORCE] ");
|
|
|
-
|
|
|
- } else if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LIMIT_A == ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A) {
|
|
|
- Serial.print(" [ROTATE_REQUIRED] ");
|
|
|
- }
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A == ARDUINO_ARRAY_COUNT_T_INIT) {
|
|
|
- Serial.print(" [ARDUINO_ARRAY_COUNT_A] [NOT SET ERROR] [IGNORE] ");
|
|
|
- }
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LAST_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A = ARDUINO_ARRAY_INDEX_FIRST ;
|
|
|
- //ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A //NOT CHANGED
|
|
|
- //ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LIMIT_A// NOT CHANGED
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A = ARDUINO_ARRAY_INDEX_FIRST ;
|
|
|
- //ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_time_min_run_MIN_A
|
|
|
- //ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_time_min_run_MIN_A
|
|
|
- //ARDUINO_QUEUE_FLAG_T ARDUINO_QUEUE_FLAG_A ;
|
|
|
- // ARDUINO_ARRAY_ATTR_QUEUE_BACK_T ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_BACK_A ;
|
|
|
-
|
|
|
- //ARDUINO_ARRAY_ATTR_QUEUE_COUNT_T ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_COUNT_A ;
|
|
|
- #endif
|
|
|
-
|
|
|
- //validate if ARDUINO_ARRAY_ATTR_QUEUE_BACK_A nie nachodzi
|
|
|
- return ARDUINO_ARRAY_INDEX_FIRST ;
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-// ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_T
|
|
|
-
|
|
|
-
|
|
|
-ARDUINO_FUNCT_INIT_RESULT_T ARDUINO_ATTR_ARRAY_S__commit_added_element_QUEUE(
|
|
|
- ARDUINO_ATTR_ARRAY_S &ARDUINO_ATTR_ARRAY_A ,
|
|
|
- ARDUINO_ARRAY_INDEX_CURRENT_T ARDUINO_ARRAY_INDEX_CURRENT_A, //current index,
|
|
|
- // ARDUINO_QUEUE_FLAG_T ARDUINO_QUEUE_FLAG_A , bez sensu - opcjonalbnei dla rekoru
|
|
|
- ARDUINO_QUEUE_ELEMENT_FLAG_T ARDUINO_QUEUE_ELEMENT_FLAG_A //flags of records
|
|
|
- ) { //when added new element call this func
|
|
|
-
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ATTR_ARRAY_S__commit_added_element_QUEUE)
|
|
|
- // || DEBUG_QUEUE)
|
|
|
- #if not defined(DISABLE_ANY_PRINT)
|
|
|
- Serial.println("[ #297 ARDUINO_ATTR_ARRAY_S__commit_added_element] [INCREMENTED] ARDUINO_QUEUE_ELEMENT_FLAG_A[");Serial.print(ARDUINO_QUEUE_ELEMENT_FLAG_A,BIN); Serial.print("] ");
|
|
|
- #endif
|
|
|
- #endif
|
|
|
-
|
|
|
-
|
|
|
- if(ARDUINO_ARRAY_INDEX_CURRENT_A == ARDUINO_ARRAY_INDEX_CORRUPT ) {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ATTR_ARRAY_S__commit_added_element_QUEUE)
|
|
|
- #if not defined(DISABLE_ANY_PRINT)
|
|
|
- Serial.println("[ #2398 commit_added_element] [ARDUINO_ARRAY_INDEX_CORRUPT] ignored");
|
|
|
- #endif
|
|
|
- #endif
|
|
|
- } else if(ARDUINO_QUEUE_ELEMENT_FLAG_A & ARDUINO_QUEUE_ELEMENT_FLAG_INITIAL_CORRUPT) {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ATTR_ARRAY_S__commit_added_element_QUEUE)
|
|
|
- Serial.println("[ #3338 commit_added_element] [ARDUINO_QUEUE_ELEMENT_FLAG_INITIAL_CORRUPT] ignored");
|
|
|
- #endif
|
|
|
- } else {
|
|
|
- //if should index rotate
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ATTR_ARRAY_S__commit_added_element_QUEUE)
|
|
|
- Serial.print("[#555 commit_added_element] [if should index rotate]?? ");
|
|
|
- #endif
|
|
|
- if((ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A + 1) >= ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LIMIT_A) {
|
|
|
-
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ATTR_ARRAY_S__commit_added_element_QUEUE)
|
|
|
- Serial.print(" +[ARDUINO_ARRAY_COUNT_A][HIT] ");
|
|
|
- #endif
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A == ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A ) {
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LAST_A ;
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ATTR_ARRAY_S__commit_added_element_QUEUE)
|
|
|
- Serial.print("+set last[PEEK_A]["); Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A); Serial.print("] ");
|
|
|
- #endif
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- } else {
|
|
|
-
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A ++;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_COUNT_A ++;
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ATTR_ARRAY_S__commit_added_element_QUEUE)
|
|
|
- #if not defined(DISABLE_ANY_PRINT)
|
|
|
- Serial.print("433[ELSE] [QUEUE++]");
|
|
|
- Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A);
|
|
|
- Serial.print("] ");
|
|
|
- #endif
|
|
|
- #endif
|
|
|
-
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LAST_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A ;
|
|
|
-
|
|
|
- if((ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A + 1) >= ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LIMIT_A) {
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A = ARDUINO_ARRAY_INDEX_FIRST ;
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ATTR_ARRAY_S__commit_added_element_QUEUE)
|
|
|
- Serial.print("[NEXT ROTATE]");
|
|
|
- Serial.print( ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A);
|
|
|
- Serial.print("] ");
|
|
|
- #endif
|
|
|
-
|
|
|
-
|
|
|
- } else {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ATTR_ARRAY_S__commit_added_element_QUEUE)
|
|
|
- Serial.print("[NEXT ++]");
|
|
|
- Serial.print( ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A);
|
|
|
- Serial.print("] ");
|
|
|
- #endif
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A++ ;
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A = ARDUINO_ARRAY_ATTR_INDEX__READY_TO_QUERY ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_CURRENT_A = ARDUINO_ARRAY_INDEX_CURRENT_A ;
|
|
|
-
|
|
|
-
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A > 0) { } else {
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A = ARDUINO_ARRAY_INDEX_CURRENT_A ;
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ATTR_ARRAY_S__commit_added_element_QUEUE)
|
|
|
- Serial.print("+init[ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A]["); Serial.print(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A); Serial.print("] ");
|
|
|
- #endif
|
|
|
- }
|
|
|
- return true ;
|
|
|
- }
|
|
|
-
|
|
|
- return false;
|
|
|
-
|
|
|
-}
|
|
|
-/*
|
|
|
-ARDUINO_ARRAY_ATTR_QUEUE_T ARDUINO_ARRAY_ATTR_QUEUE(ARDUINO_ATTR_ARRAY_T &ARDUINO_ATTR_ARRAY_A) {
|
|
|
- ARDUINO_ARRAY_ATTR_QUEUE_T ARDUINO_ARRAY_ATTR_QUEUE_A = {} ;
|
|
|
- ARDUINO_ARRAY_ATTR_QUEUE_A.ARDUINO_ARRAY_ATTR_QUEUE_COUNT_MAX_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LIMIT_A ;
|
|
|
- ARDUINO_ARRAY_ATTR_QUEUE_A.ARDUINO_ARRAY_ATTR_QUEUE_COUNT_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_COUNT_A ; // Slave_Ports_Status_QUEUE_T_ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A ;
|
|
|
- ARDUINO_ARRAY_ATTR_QUEUE_A.ARDUINO_ARRAY_ATTR_QUEUE_BACK_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_BACK_A ;
|
|
|
- ARDUINO_ARRAY_ATTR_QUEUE_A.ARDUINO_ARRAY_ATTR_QUEUE_FRONT_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_FRONT_A;
|
|
|
- ARDUINO_ARRAY_ATTR_QUEUE_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A;
|
|
|
- return ARDUINO_ARRAY_ATTR_QUEUE_A ;
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-*/
|
|
|
-
|
|
|
-ARDUINO_ARRAY_INDEX_CURRENT_T ARDUINO_ARRAY_INDEX_CURRENT(
|
|
|
- ARDUINO_ATTR_ARRAY_S &ARDUINO_ATTR_ARRAY_A
|
|
|
- ) {
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-ARDUINO_ARRAY_INDEX_NEXT_LOCK_T ARDUINO_ARRAY_INDEX_POP_LOCK( ARDUINO_ATTR_ARRAY_S &ARDUINO_ATTR_ARRAY_A){
|
|
|
- ARDUINO_ARRAY_INDEX_NEXT_T ARDUINO_ARRAY_INDEX_NEXT_A ;
|
|
|
- ARDUINO_ARRAY_INDEX_NEXT_A = ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A ;
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- #if not defined(DISABLE_ANY_PRINT)
|
|
|
- Serial.print(" [ARDUINO_ARRAY_INDEX_POP_LOCK]? ");
|
|
|
- #endif
|
|
|
- #endif
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A > 0) {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" [INCREMENT][PEEK] ");
|
|
|
- #endif
|
|
|
-
|
|
|
- if((ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A + 1) >= ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_LIMIT_A) {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" [INCREMENT][ROTATE]? ");
|
|
|
- #endif
|
|
|
- if(ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A == ARDUINO_ARRAY_INDEX_FIRST) {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" [INCREMENT][=NEXT][QUEUE FORCE 0] ");
|
|
|
- #endif
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A = 0;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A = 0 ; //--;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_COUNT_A = 0 ; //--;
|
|
|
- } else {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" [INCREMENT--][NEXT]=ARDUINO_ARRAY_INDEX_FIRST ");
|
|
|
- #endif
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A = ARDUINO_ARRAY_INDEX_FIRST ;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A --;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_COUNT_A --;
|
|
|
- }
|
|
|
-
|
|
|
- } else {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" [INCREMENT][NOTROTATE]? ");
|
|
|
- #endif
|
|
|
- if((ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A + 1) == ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A) {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" 2[INCREMENT][=CURRENT] [QUEUE FORCE 0] ");
|
|
|
- #endif
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A = 0;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A = 0;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_COUNT_A = 0;
|
|
|
- } else {
|
|
|
-
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" [POP][NEXT] ");
|
|
|
- #endif
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_PEEK_A++;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_COUNT_A --;
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_QUEUE_COUNT_A --;
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- } else {
|
|
|
-
|
|
|
-
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" [POP][EMPTY] ");
|
|
|
- #endif
|
|
|
- }
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" [POP][RETURNED["); Serial.print(ARDUINO_ARRAY_INDEX_NEXT_A); Serial.println("] ");
|
|
|
- #endif
|
|
|
- return ARDUINO_ARRAY_INDEX_NEXT_A ;
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-ARDUINO_ARRAY_INDEX_NEXT_LOCK_T ARDUINO_ARRAY_INDEX_NEXT_LOCK(
|
|
|
- ARDUINO_ATTR_ARRAY_S &ARDUINO_ATTR_ARRAY_A//,
|
|
|
- //ARDUINO_ARRAY_INDEX_T &ARDUINO_ARRAY_INDEX_A //,
|
|
|
- //ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_T &ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A
|
|
|
- //ARDUINO_ARRAY_INDEX_NEXT_T &ARDUINO_ARRAY_INDEX_NEXT_LOCK_A,
|
|
|
- //Slave_Ports_ATTR_QUEUE_COUNT_MAX_A
|
|
|
- //Slave_Ports_ATTR_QUEUE_COUNT_A
|
|
|
- //Slave_Ports_ATTR_QUEUE_BACK_A
|
|
|
- //Slave_Ports_ATTR_QUEUE_FRONT_A
|
|
|
- ){
|
|
|
- ARDUINO_ARRAY_INDEX_NEXT_T ARDUINO_ARRAY_INDEX_NEXT_A ;
|
|
|
-
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print("[ARDUINO_ARRAY_INDEX_NEXT_LOCK] [ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A]? ");
|
|
|
- #endif
|
|
|
- if( ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__TO_INITIALIZE) {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" [ARDUINO_ARRAY_ATTR_INDEX__TO_INITIALIZE]? [ERROR] !=[ARDUINO_ARRAY_ATTR_INDEX__TO_INITIALIZE] ");
|
|
|
- #endif
|
|
|
- } else if(( ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__INITIALIZED)
|
|
|
- or ( ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__READY_TO_QUERY)) {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" [ARDUINO_ARRAY_ATTR_INDEX__INITIALIZE][OK] if->? ");
|
|
|
- #endif
|
|
|
-
|
|
|
-
|
|
|
- if( ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__LOCK) {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" &[ARDUINO_ARRAY_ATTR_INDEX__LOCK] [LOCKED] [FALSE] ");
|
|
|
- #endif
|
|
|
- // ARDUINO_ARRAY_INDEX_NEXT_LOCK_A = NULL ;
|
|
|
- return 0;
|
|
|
- } else if( ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__TO_COMMIT) {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" =[ARDUINO_ARRAY_ATTR_INDEX__TO_COMMIT] [FALSE] ");
|
|
|
- #endif
|
|
|
- return 0;
|
|
|
-
|
|
|
- } else if(( ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A & ARDUINO_ARRAY_ATTR_INDEX__READY_TO_QUERY)
|
|
|
- or (ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A == ARDUINO_ARRAY_ATTR_INDEX__INITIALIZED )) {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" =[ARDUINO_ARRAY_ATTR_INDEX__TO_INCREMENT][OK] -> [ARDUINO_ARRAY_ATTR_QUEUE_add_distance] ");
|
|
|
- #endif
|
|
|
- //ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A =
|
|
|
- //ARDUINO_ARRAY_ATTR_QUEUE_add_distance(ARDUINO_ATTR_ARRAY_A ) ;//, ARDUINO_QUEUE_ELEMENT_FLAG_STANDARD , ARDUINO_ARRAY_INDEX_NEXT_A, ARDUINO_ARRAY_INDEX_A) ;
|
|
|
-
|
|
|
- ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_ATTR_INDEX_OPTIONS_A = ARDUINO_ARRAY_ATTR_INDEX__LOCK ;
|
|
|
- return ARDUINO_ATTR_ARRAY_A.ARDUINO_ARRAY_INDEX_NEXT_A ;
|
|
|
- } else {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" =518[ARDUINO_ARRAY_ATTR_INDEX__TO_INCREMENT][ERROR][ELSE] ");
|
|
|
- #endif
|
|
|
- return 0;
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- } else {
|
|
|
- #if defined(DEBUG) || defined(DISABLE_LOOP) || defined(DEBUG_QUEUE) || defined(DEBUG_STRUCT_INIT) || defined(DEBUG_STORAGE_QUEUE_TEST) || defined(DEBUG_ARDUINO_ARRAY_INDEX_NEXT_LOCK)
|
|
|
- Serial.print(" ![ARDUINO_ARRAY_ATTR_INDEX__INITIALIZED] =521[ELSE][ERROR] ");
|
|
|
- #endif
|
|
|
- return 0;
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-/*
|
|
|
-void ARDUINO_ARRAY_COUNT(
|
|
|
-ARDUINO_ARRAY_INDEX_TABLE_S* ARDUINO_ARRAY_INDEX_TABLE_A,
|
|
|
-ARDUINO_ARRAY_INDEX_T_TO_DELETE_S* ARDUINO_ARRAY_INDEX_T_TO_DELETE_A,
|
|
|
-ARDUINO_ARRAY_INDEX_CURRENT_T* ARDUINO_ARRAY_INDEX_CURRENT_A,
|
|
|
-ARDUINO_ARRAY_INDEX_LAST_T* ARDUINO_ARRAY_INDEX_LAST_A,
|
|
|
-ARDUINO_ARRAY_COUNT_T* ARDUINO_ARRAY_COUNT_A
|
|
|
-) {
|
|
|
-
|
|
|
-
|
|
|
-}
|
|
|
-*/
|
|
|
-
|
|
|
-/*
|
|
|
-
|
|
|
-void ARDUINO_ARRAY_DELETE(
|
|
|
-ARDUINO_ARRAY_INDEX_TABLE_S* ARDUINO_ARRAY_INDEX_TABLE_A,
|
|
|
-ARDUINO_ARRAY_INDEX_T_TO_DELETE_S* ARDUINO_ARRAY_INDEX_T_TO_DELETE_A,
|
|
|
-ARDUINO_ARRAY_ASSOC_TABLE_S* ARDUINO_ARRAY_ASSOC_TABLE_A
|
|
|
-);
|
|
|
-
|
|
|
-*/
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-char DISPLAY_array16_I(char message[], int count){ //to provide messages concat
|
|
|
- int i ;
|
|
|
- String DISPLAY_array16_S ;
|
|
|
- char DISPLAY_array16_A ;//DISPLAY_array16_T
|
|
|
- for(i=0;i<=count; i++) {
|
|
|
- DISPLAY_array16_S = DISPLAY_array16_S + message[i] ;
|
|
|
- }
|
|
|
- DISPLAY_array16_S.toCharArray(DISPLAY_array16_A, DISPLAY_array16_S.length());
|
|
|
- #ifdef DEBUG
|
|
|
- if(DEBUG > 4) {
|
|
|
- Serial.print("#189 DISPLAY_array16_I ") ; Serial.print(DISPLAY_array16_A); Serial.println(" ] ");
|
|
|
- }
|
|
|
- #endif
|
|
|
- return DISPLAY_array16_A ;
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- String BIN8_to_STRING(byte byteA ) {
|
|
|
- String return_A="" ;
|
|
|
- for ( size_t mask = 1 << ((sizeof(byteA) * CHAR_BIT) - 1); mask; mask >>= 1 )
|
|
|
- {
|
|
|
- return_A.concat(byteA & mask ? "1" : "0");
|
|
|
- }
|
|
|
- //message2.concat(Exp_state_s.substring(1,8));
|
|
|
- return return_A ;
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-ARDUINO_ARRAY_INDEX_T ARDUINO_ARRAY_INDEX__next__looop(
|
|
|
- ARDUINO_ARRAY_INDEX_LIMIT_T ARDUINO_ARRAY_INDEX_LIMIT_A ,
|
|
|
- ARDUINO_ARRAY_INDEX_CURRENT_T ARDUINO_ARRAY_INDEX_CURRENT_A
|
|
|
- ) {
|
|
|
- if(ARDUINO_ARRAY_INDEX_CURRENT_A + 1 >= ARDUINO_ARRAY_INDEX_LIMIT_A) {
|
|
|
- return ARDUINO_ARRAY_INDEX_FIRST ;
|
|
|
- } else {
|
|
|
- return ARDUINO_ARRAY_INDEX_CURRENT_A + 1 ;
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-int BYTE_SAFE_DECREMENT_TO_LIMIT(byte limit_min_with, byte curr_value, int try_decrement ) {
|
|
|
- if((curr_value - try_decrement) < limit_min_with) return limit_min_with;
|
|
|
- else {
|
|
|
- Serial.print(" SAFE DECR detect curr["); Serial.print(curr_value); Serial.print("] decrement["); Serial.print(try_decrement); Serial.print("] ");
|
|
|
- return (curr_value - try_decrement) ;
|
|
|
- }
|
|
|
-}
|