亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rdi_prop.h

?? ARM公司關于調試接口RDI的最新頭文件
?? H
?? 第 1 頁 / 共 2 頁
字號:
/* RDI Properties access
   Copyright (C) 2001 Free Software Foundation, Inc.


This file is part of GDB.


GDB is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation; either version 2, or (at your option) any later
version.


GDB is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
for more details.


You should have received a copy of the GNU General Public License
along with GDB; see the file COPYING.  If not, write to the Free
Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA.  */

/* -*-C-*-
 *
 * $Revision: 1.4 $
 *   $Author: aberent $
 *     $Date: 2000/01/10 16:19:26 $
 */

#ifndef rdi_prop_h
#define rdi_prop_h

/*
 * RDI Properties - target specific properties, controlled over RDI
 *
 * RDI Properties are new in RDI 1.51
 */

/*
 * Typedef: RDIProperty_GroupDesc
 * Purpose: Each module (processor or agent) can have a separate set or
 *          groups associated with it.  Each set of groups can be arranged as
 *          a non cyclic tree.
 */
typedef struct RDIProperty_GroupDesc {
  unsigned id;              /* ID must be unique over all groups in a module */
  char name[60];            /* Brief name of the group */
  char description[128];    /* Slightly longer description of group */
  int numProperties;        /* number of properties in this group */
  int numSubGroups;         /* number of subgroups in this group */
} RDIProperty_GroupDesc;

/*
 * Certain group IDs are pre-defined (and used by the debug controller to
 * extract further group IDs)
 */
#define RDIPropertyGroup_SuperGroup 0
#define RDIPropertyGroup_TopLevelGroup 1

/*
 * Typedef: RDIProperty_DisplayType
 * Purpose: These are display oriented types, which allow a GUI debugger to
 *          display suitable properties in a user friendly GUI way.  A
 *          debug controller can always ignore this and just display as the
 *          fundamental type instead.
 *
 * RDIProprty_PDT_Standard: no special GUI method can be used for this property
 *                          RDIProperty_GetPropertyDisplayDetails returns no
 *                          data, and the value RDIError_NoError.
 *
 * No other cases are defined yet.

 */
typedef enum RDIProperty_DisplayType
{
  RDIProperty_PDT_Standard = 0     /* No special display options possible */
} RDIProperty_DisplayType;


/* Property description structure
 *
 * Note that a property can be treated, as either numeric or a string or
 * even both! (Both is intended as a useful feature not just an oddity, eg.
 * for a variable which holds the type of a Cache (I or D), both numeric
 * (0, 1) and string ("I-Cache", "D-Cache") may be appropriate.  If a
 * variable advertises the capability of both string and numerical visibility,
 * the debug controller should by default use the string view if it is able to.
 *
 * This property description contains an ID which both uniquely identifies
 * a property, and distinguishes between "RDI defined" (or standard) 
 * and "RDI extension" (or non-standard) properties, as defined below:
 *
 * RDI defined properties are these are ones which
 * need to be understood by a debug controller eg. the command line
 * property needs to be understood by a debug controller (whereas most
 * properties mean nothing to the debug controller, (only to the debug agent
 * and user).
 *
 * RDI extension properties have the top bit set, and are intended for use
 * by 3rd parties to add new properties without having to
 * refer to ARM to do so.  Should one of these ever need to be known
 * about by a debug controller then the 3rd party should contact ARM and get
 * an RDI property allocated, since only then is it certain that a
 * debugger which uses that id will always be referring to the
 * intended property (rather than something another third party
 * has added).
 *
 * Note also that the id of a property must be unique for the module
 * handle.  The property names must also be unique within a group.
 * An implication of this is that in order for a debugger to be able
 * to use the "flat" list of properties provided when asking for all
 * the properites in the supergroup, the Debug Agent should ensure
 * that all property names in the "supergroup" are unique, which could
 * mean pre / post fixing to some of the names which would otherwise
 * have been identical.
 */
typedef struct RDIProperty_Desc
{
  char name[60];          /* The name of the property - no spaces in name */
  char description[128];  /* A short description of the variable's function */
  unsigned32 id;          /* The id of a property is used to identify that
                           * property when setting / getting its value etc.
                           * The property id is a 32 bit unsigned integer
                           * which is split as follows:
                           * id[31] = 0 for RDI defined properies - see above
                           *        = 1 for extension properties - see above
                           * id[30:16] = 0  (currently reserved)
                           * id[15:0] = identifer for this property.  For
                           *            standard properties this value is
                           *            defined by the RDI; for non-standard
                           *            properties it may be any unique value
                           *            for that module handle.
                           */

  bool asString;          /* Can this property be treated as a string ? */
  unsigned maxLen;        /* if asString==1 then the maximum number of
                           * characters the property value may be set to
                           */
  bool asNumeric;         /* Can this property be treated as a numeric ? */
  bool isSigned;          /* if asNumeric==1 whether it is a signed numeric */
  unsigned width;         /* if asNumeric==1 the width in bits of the value
                           * Note that not all debug agents or debug hosts
                           * will be able to cope with all values.  For
                           * standard numeric properties use width=32
                           */
  unsigned readOnly;      /* 0 => read / write, otherwise read only */
  bool monotonicIncreasing;
                          /* 1 => This property is a monotonically
                           * increasing numerical value, and so it
                           * displaying differences between consecutive
                           * reads is useful - eg. time, cycle counts
                           */
  bool traceable;         /* 1 => This property is "traceable" in that it
                           * is useful to display consecutive values of it
                           * next to each other to produce a trace of values.
                           */

  RDIProperty_DisplayType display;
                          /* Display type for this property */
} RDIProperty_Desc;


/*
 * Function: RDI_InfoProc(mh, RDIInfo_Property, arg1, arg2)
 *
 *  Version: RDI 1.51
 *
 *  Purpose: Inquire whether RDI properties are supported by this target
 *
 *           This must be called before any other Property related info
 *           calls are made, and they will only be supported if this returns
 *           RDIError_NoError.
 *
 *  Returns: RDIError_NoError               Properties supported
 *           RDIError_UnimplementedMessage  Properties not supported
 */
#define RDIInfo_Properties 0x700 /* Sanity check - duplicated in rdi_info.h */

/*
 * Function: RDI_InfoProc(mh, RDIProperty_RequestGroups, arg1, arg2)
 *
 *  Version: RDI 1.51
 *
 *  Purpose: Called to get the group descriptions of groups within the
 *           specified group.  The data returned also gives how many properties
 *           and groups are in the requested groups (so that further calls can
 *           be made and buffers of the appropriate sizes passed in.
 *
 *  Params:
 *      Input:  mh     handle identifies the debug agent / processor
 *
 *      Input:  type   RDIProperty_RequestGroups
 *
 *      Input:  arg1   unsigned groupId
 *
 *                     If groupId == RDIPropertyGroup_SuperGroup:
 *                       This is a request for information about the 
 *                       "supergroup", a group which contains ALL properties
 *                       for this module.  It always exists.  Only one
 *                       RDIProperty_GroupDesc is written to in this case.  On
 *                       return this will contain the total number of
 *                       properties for this module.  Additionally, it will
 *                       contain the number of groups there are in the top
 *                       level group (RDIPropertyGroup_TopLevelGroup) for this
 *                       module.
 *
 *                     If groupId == RDIPropertyGroup_TopLevelGroup:
 *                       This is a request for information about the groups
 *                       contained in the top level.  The number of group
 *                       descriptions written to will be the number of groups
 *                       returned when this call was made with a groupId of
 *                       RDIPropertyGroup_SuperGroup.  No properties are
 *                       permitted in the top level group.
 *
 *                     If groupId == something else:
 *                       This is a request for the list of group
 *                       descriptions for the groups which are a subset of the
 *                       specified groupId.  The number of groups which will
 *                       be returned will already be known (from a previous
 *                       call to this fucntion).
 *
 *     In/Out:  arg2   RDIProperty_GroupDesc *descs
 *                     This is a buffer provided by the caller, which is large
 *                     enough to have a number of group descriptions filled
 *                     in, as determined  by the value of groupId and previous
 *                     calls.
 *
 *  Returns:
 *      OK:     RDIError_NoError
 *      OK:     RDIError_UnimplementedMessage - not understood
 *      Error:  RDIError_NoSuchHandle         - bad group id passed in
 */
#define RDIProperty_RequestGroups 0x701


/*
 * Function: RDI_InfoProc(mh, RDIProperty_RequestDescriptions, arg1, arg2)
 *
 *  Version: RDI 1.51
 *
 *  Purpose: Called to find out what RDI properties there are for this
 *           Processor / Debug Agent in the specified group.
 *
 *           Typically RDIProperty_RequestGroups would be called first
 *           to find out how many properties are in this group so that
 *           a buffer of sufficient size can be passed in.
 *
 *  Params:
 *      Input:  mh     handle identifies debug agent / processor for this
 *                     request.
 *
 *      Input:  type   RDIProperty_RequestDescriptions

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美狂野另类xxxxoooo| 久久久.com| 欧美精品一区视频| 中文字幕日韩精品一区| 日韩中文字幕不卡| caoporn国产一区二区| 欧美一级午夜免费电影| 亚洲视频你懂的| 国产在线一区观看| 91精品国产综合久久婷婷香蕉| 国产精品热久久久久夜色精品三区| 蜜臀av一级做a爰片久久| 色哟哟精品一区| 国产精品久久久久影院色老大| 精品系列免费在线观看| 欧美军同video69gay| 亚洲免费观看高清完整| 国产成a人无v码亚洲福利| 日韩免费电影网站| 日本美女视频一区二区| 欧美日韩第一区日日骚| 一区二区三区日韩欧美| jlzzjlzz亚洲日本少妇| 中文字幕的久久| 国产成人a级片| 国产亚洲人成网站| 国产一区二区三区久久久| 精品少妇一区二区三区日产乱码 | 亚洲成人午夜电影| 色婷婷香蕉在线一区二区| 国产精品国产自产拍在线| 国产精一区二区三区| 精品久久五月天| 美女视频一区二区三区| 日韩三级中文字幕| 秋霞av亚洲一区二区三| 欧美一区二区在线不卡| 喷水一区二区三区| 日韩免费视频一区| 国内外成人在线| 欧美本精品男人aⅴ天堂| 久久爱另类一区二区小说| 欧美v日韩v国产v| 激情小说欧美图片| 久久久久国产成人精品亚洲午夜 | 成人永久aaa| 亚洲婷婷在线视频| 欧美日韩在线免费视频| 偷窥少妇高潮呻吟av久久免费| 91精品国产欧美一区二区成人 | 日韩亚洲电影在线| 美女精品自拍一二三四| 久久精品亚洲一区二区三区浴池| 粉嫩高潮美女一区二区三区| 日韩理论片网站| 在线观看网站黄不卡| 午夜在线成人av| 精品成人私密视频| 99精品欧美一区二区三区综合在线| 亚洲一区二区三区精品在线| 精品日本一线二线三线不卡| 不卡的av在线播放| 亚洲午夜久久久久| 久久久久国产免费免费 | 69堂亚洲精品首页| 国产精品99久久久久久有的能看 | 亚洲欧美区自拍先锋| 欧美精品亚洲一区二区在线播放| 久久99久久久久| 中文字幕亚洲区| 日韩女优电影在线观看| 色综合色狠狠综合色| 美女视频一区二区| 亚洲免费在线观看视频| 欧美不卡123| 欧美亚洲自拍偷拍| 国产成人综合亚洲91猫咪| 亚洲国产va精品久久久不卡综合| 精品国免费一区二区三区| 在线观看亚洲专区| 国产成人免费视频一区| 天涯成人国产亚洲精品一区av| 国产精品免费观看视频| 日韩欧美在线一区二区三区| 色国产精品一区在线观看| 狠狠色2019综合网| 石原莉奈一区二区三区在线观看| 亚洲国产成人在线| 精品国产乱码久久久久久蜜臀| 91猫先生在线| 高清不卡在线观看av| 日本视频免费一区| 亚洲国产视频一区| 国产精品久久久久精k8| 久久久久久电影| 精品久久久久一区| 日韩一级二级三级精品视频| 欧美亚洲自拍偷拍| 色天天综合久久久久综合片| 成人激情免费网站| 国产精品一区在线| 九九九精品视频| 蜜臀精品久久久久久蜜臀| 亚洲成人在线观看视频| 亚洲欧美日韩国产成人精品影院| 国产精品素人视频| 国产日韩欧美在线一区| 26uuu久久综合| 精品人在线二区三区| 日韩欧美国产综合在线一区二区三区| 欧美美女一区二区| 欧美精选一区二区| 欧美日韩五月天| 欧美日韩国产天堂| 欧美日韩亚洲不卡| 欧美日韩国产片| 欧美日本一区二区三区| 91精品一区二区三区在线观看| 欧美影院一区二区三区| 欧美色电影在线| 欧美一区中文字幕| 欧美一区二区三区不卡| 日韩一区二区三区在线视频| 日韩欧美在线综合网| 精品国产乱码久久久久久蜜臀| 精品国产1区二区| 久久久精品影视| 国产精品乱码一区二区三区软件| 国产精品国模大尺度视频| 亚洲天堂av老司机| 亚洲国产一区视频| 久久成人羞羞网站| 国产二区国产一区在线观看| 成人久久久精品乱码一区二区三区| 成人a区在线观看| 色婷婷综合久久久| 91精品免费观看| 久久综合av免费| 最近日韩中文字幕| 午夜久久电影网| 国产美女精品人人做人人爽| 成人av网站在线观看免费| 欧美性猛片xxxx免费看久爱| 日韩欧美一区二区不卡| 国产视频一区不卡| 亚洲色欲色欲www在线观看| 一区二区久久久久| 日韩国产欧美视频| 成人午夜伦理影院| 欧美日韩日日骚| 国产丝袜在线精品| 亚洲aaa精品| 国产尤物一区二区在线| 91九色02白丝porn| 精品久久久久久久久久久久包黑料 | 欧美一区二区在线视频| 国产亚洲欧美日韩在线一区| 亚洲精品中文在线| 久久精品国产澳门| 91色在线porny| 精品国产乱子伦一区| 一区二区三区在线观看动漫| 精品一区二区三区香蕉蜜桃| 色婷婷精品久久二区二区蜜臂av | 久久97超碰国产精品超碰| 91在线看国产| 久久综合色8888| 亚洲国产精品综合小说图片区| 国产精品一二三四五| 欧美日韩高清在线| 最新日韩在线视频| 国产一区二区影院| 欧美人妖巨大在线| 亚洲视频在线一区| 国产成人在线看| 日韩免费性生活视频播放| 亚洲va韩国va欧美va| 成年人午夜久久久| 精品电影一区二区| 人妖欧美一区二区| 欧美日韩精品一区二区三区蜜桃 | 亚洲成人三级小说| 99久久精品国产一区二区三区| 久久男人中文字幕资源站| 日韩精品欧美精品| 欧美性欧美巨大黑白大战| 亚洲乱码日产精品bd| proumb性欧美在线观看| 国产精品丝袜一区| 国产精品亚洲一区二区三区在线 | 欧美另类久久久品| 亚洲一区二区五区| 日本高清不卡aⅴ免费网站| 国产精品国产成人国产三级 | 欧洲精品在线观看| 一区二区三区在线高清| 欧美日韩一区二区在线视频| 一区二区三区在线观看视频| 欧美在线制服丝袜| 亚洲成人一区二区在线观看|