TR69 TRxObjNode
1. external/tr69c/inc/tr69cdefs.h
typedef struct TRxObjNode
{
const char *name;
TRxPAtrrib paramAttrib;
TRxSETFUNC setTRxParam; /* only set if param is writeable */
TRxGETFUNC getTRxParam;
void *objDetail;
InstanceDope *instanceDope;
}TRxObjNode;
2.
 (1)typedef union TRxPAttrib {
    struct Attrib {
    eTRxType    etype:8;
    unsigned    slength:16;
    unsigned    inhibitActiveNotify:1; /* set to always inhibit change notification: use on counters */
    //unsigned    notification:2;
    //unsigned    accessListIndex:1;  /* is 0 for no Subscriber access or 1 to enable */
                                    /* subscriber access */
    } attrib;
    InstanceDesc    *instance;
} TRxPAttrib;
(2)typedef TRX_STATUS (*TRxSETFUNC)(const char *value);
(3)typedef TRX_STATUS (*TRxGETFUNC)(char **value);
(4)typedef struct InstanceDope {
    struct InstanceDope *next;
    InstanceDesc *instance;  /* set to currentInstance Desc*/
    char *pdata;
    unsigned notification:2;
    unsigned accessListIndex:1;
} InstanceDope;
3. (1-1)typedef enum {
    tUnknown=0,
    tObject,
    tString,
    tInt,
    tUnsigned,
    tBool,
    tDateTime,
    tBase64,
    tInstance,
    tStringSOnly        /* Set strings only */
} eTRxType;
(1-2)typedef struct InstanceDesc {
    struct      InstanceDesc *next;
    struct      InstanceDesc *parent;
    int         instanceID;
    void        *hwUserData;
} InstanceDesc;
(2-1)typedef enum {
    TRX_OK=0,
    TRX_REBOOT,
    TRX_ERR, /* for internal error */
    TRX_INVALID_PARAMETER_VALUE
}TRX_STATUS;
(4-1)
typedef struct InstanceDesc {
    struct      InstanceDesc *next;
    struct      InstanceDesc *parent;
    int         instanceID;
    void        *hwUserData;
} InstanceDesc;
                    
                
                
            
        
浙公网安备 33010602011771号