Changeset 1162 for Daodan


Ignore:
Timestamp:
Oct 24, 2021, 4:50:32 AM (3 years ago)
Author:
rossy
Message:

Daodan: Add float-type config options

Location:
Daodan/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • Daodan/src/Daodan_Config.c

    r1017 r1162  
    300300                                case C_CMD:
    301301                                        break;
     302                                case C_FLOAT:
     303                                        STARTUPMESSAGE("Option %s.%s = %f (def %f)", config[s].name, co->name, co->value.floatVal, co->defaultValue.floatVal);
     304                                        break;
    302305                                default:
    303306                                        STARTUPMESSAGE("Option %s.%s = %d (def %d)", config[s].name, co->name, co->value.intBoolVal, co->defaultValue.intBoolVal);
     
    361364                case C_INT:
    362365                        return "Int";
     366                case C_FLOAT:
     367                        return "Float";
    363368                case C_BOOL:
    364369                        return "Bool";
     
    391396                case C_CMD:
    392397                        return 0;
     398                case C_FLOAT:
     399                        val = malloc(50);
     400                        sprintf(val, "%f", optVal->floatVal);
     401                        return val;
    393402                default:
    394403                        val = malloc(20);
     
    411420                case C_INT:
    412421                        return opt->defaultValue.intBoolVal != opt->value.intBoolVal;
     422                case C_FLOAT:
     423                        return opt->defaultValue.floatVal != opt->value.floatVal;
    413424        }
    414425        return 0;
     
    526537                        case C_INT:
    527538                                co->value.intBoolVal = strtol(value, NULL, 0);
     539                                break;
     540                        case C_FLOAT:
     541                                co->value.floatVal = strtof(value, NULL);
    528542                                break;
    529543                        case C_BOOL:
  • Daodan/src/Daodan_Config.h

    r1000 r1162  
    1010        C_BOOL,
    1111        C_INT,
     12        C_FLOAT,
    1213        C_STRING,
    1314        EXT_BOOL
     
    1617typedef union {
    1718        int intBoolVal;
     19        float floatVal;
    1820        uint8_t* extBoolVal;
    1921        char* stringVal;
Note: See TracChangeset for help on using the changeset viewer.