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

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

?? utilcable.c

?? Pro.TOOLKIT.Wildfire插件設計.配套光盤-141M.zip
?? C
?? 第 1 頁 / 共 4 頁
字號:
/*================================================================*\    FILE:       UtilCable.c    PURPOSE:    Functions to manage cabling    HISTORY:   24-Aug-98 I-01-17 Pavel    $$1  Created.   28-Aug-98 I-01-17 Alexey   $$2  Cast int error values to ProError 				   when calling to TEST_CALL_REPORT. It 				   allows to avoid C++ compiler error on 				   ALPHA_UNIX   14-Sep-98 I-01-19 Pavel    $$3  Modified ProCblCableLogicalEndsGet.   29-Dec-98 I-01-28 Alexey   $$4  Add -4 as valid return value to                                   TEST_CALL_REPORT for some ProCbl funcs   30-Dec-98 I-01-28 Alexey   $$5  Don't use TRUE, it's not defined on sgi_elf2   03-Aug-00 J-01-13 Scott    $$6  Set the bundle name correctly from ProCblBundleCreate\*=================================================================*/#include "UtilCable.h"#include "UtilString.h"#include "TestError.h"/*---------------------------------------------------------------------------*\    Functions to manage wires, cables and bundless\*---------------------------------------------------------------------------*//*---------------------------------------------------------------------------*\  Function : ProCblWireHarnessesGet  Purpose  : Retrieves pointers to the harnesses in the specified assembly              that contain the specified wire.\*---------------------------------------------------------------------------*/ProError ProCblCableHarnessesGet (    ProCblCable     *p_cable,        /* In: wire handle */    ProCblHarness   **p_harnesses,  /* Out: ProArray of harnesses                                        user must free memory by ProArrayFree */    int             *har_num)        /* Out: harness number */{    int error;    int i;    Prohandle *p_har_arr;    ProName name;        if (p_cable == NULL || p_harnesses == NULL)        return (PRO_TK_BAD_INPUTS);    error = procbl_get_wire_harnesses ((Prohandle)p_cable->p_owner->owner,        p_cable->name, &p_har_arr);    TEST_CALL_REPORT("procbl_get_wire_harnesses", "ProCblWireHarnessesGet",        (ProError)error, 0);    if (error == -1)        return (PRO_TK_GENERAL_ERROR);    ProArrayAlloc (error, sizeof (ProCblHarness), 1, (ProArray*)p_harnesses);    for (i = 0; i < error; i++)    {        ProMdlNameGet ((ProMdl)p_harnesses[i], name);        ProCblHarnessInit ((ProPart)p_har_arr[i], name,            (ProAssembly)p_cable->p_owner->owner,             &(*p_harnesses)[i]);    }    *har_num = error;    return (PRO_TK_NO_ERROR); }/*---------------------------------------------------------------------------*\  Function : ProCblCableLengthGet  Purpose  : Retrieves the length of the specified wire\*---------------------------------------------------------------------------*/ProError ProCblCableLengthGet (    ProCblCable *p_wire,        /* In: wire handle */    double     *p_length)      /* Out: wire length */{    int error;    if (p_wire == NULL || p_length == NULL)        return (PRO_TK_BAD_INPUTS);    error = procbl_get_wire_length ((Prohandle)p_wire->p_owner->harness,         p_wire->name, p_length);       TEST_CALL_REPORT("procbl_get_wire_length", "ProCblWireLengthGet",        (ProError)error, 0);    if (!error)        return (PRO_TK_GENERAL_ERROR);    return (PRO_TK_NO_ERROR);}/*---------------------------------------------------------------------------*\  Function : ProCblCableInit  Purpose  : Initialize cable structure\*---------------------------------------------------------------------------*/ProError ProCblCableInit (    int            id,              /* In: cable's id */    ProName        name,            /* In: cable's name */    ProCblHarness  *p_owner,        /* In: cable's owner */    ProCblCable    *p_cable)        /* Out:cable's handle to init*/{    int error = 0;    if (p_cable == NULL || (id == -1 && name == NULL))        return (PRO_TK_BAD_INPUTS);    if (id == -1)    {	error = procbl_get_cable_id((Prohandle)p_owner->harness, name, 	    &p_cable->id);	TEST_CALL_REPORT("procbl_get_cable_id", "ProCblCableInit",	    (ProError)error, 0);    }    else		p_cable->id = id;    if (name == NULL)    {	error = procbl_get_cable_name((Prohandle)p_owner->harness, id, 	    p_cable->name);	TEST_CALL_REPORT("procbl_get_cable_name", "ProCblCableInit",	    (ProError)error, 0);    }    else	ProUtilWstrcpy (p_cable->name, name);    p_cable->p_owner = p_owner;    return (error ==0 ? PRO_TK_NO_ERROR : PRO_TK_GENERAL_ERROR);}/*---------------------------------------------------------------------------*\  Function : ProCblCableNameGet  Purpose  : Retrieves cable name\*---------------------------------------------------------------------------*/ProError ProCblCableNameGet (    ProCblCable    *p_cable,        /* In: cable's handle*/    ProName        name)            /* Out:cable's name */{    if (p_cable == NULL)        return (PRO_TK_BAD_INPUTS);    ProUtilWstrcpy(name, p_cable->name);    return (PRO_TK_NO_ERROR);}/*---------------------------------------------------------------------------*\  Function : ProCblCableIdGet  Purpose  : Retrieves cable id\*---------------------------------------------------------------------------*/ProError ProCblCableIdGet (    ProCblCable    *p_cable,        /* In: cable's handle*/    int            *p_id)           /* Out:cable's id */{    if (p_cable == NULL || p_id == NULL)        return (PRO_TK_BAD_INPUTS);    *p_id = p_cable->id;    return (PRO_TK_NO_ERROR);}/*---------------------------------------------------------------------------*\  Function : ProCblCableTypeGet  Purpose  : Retrieves cable type\*---------------------------------------------------------------------------*/ProError ProCblCableTypeGet (    ProCblCable   *p_cable,     /* in: cable handle */    Procbl_cable_type *p_type)    /* Out: cable type */{    int error;    if (p_cable == NULL || p_type == NULL)        return (PRO_TK_BAD_INPUTS);    error = procbl_get_cable_subtype ((Prohandle)(p_cable->p_owner)->harness,        p_cable->name, p_type);    TEST_CALL_REPORT("procbl_get_cable_subtype", "Procbl_cable_typeGet",        (ProError)error, 0);    if (error != PRODEV_NO_ERROR)        return (PRO_TK_GENERAL_ERROR);    return (PRO_TK_NO_ERROR);}/*---------------------------------------------------------------------------*\  Function : ProCblCableCreate  Purpose  : Creates new cable or wire in specified harness\*---------------------------------------------------------------------------*/ProError ProCblCableCreate (    ProCblHarness  *p_harness,      /* In: harness's handle*/    ProCblSpool    *p_spool,	    /* In: spool's name */    ProName        cable_name,      /* In: cable's name */    ProCblCable    *p_cable)        /* Out:Handle of new cable*/{    int error;    ProError status;    int cable_id;    ProName w_spool_name;    if (p_harness == NULL || p_cable == NULL)        return (PRO_TK_BAD_INPUTS);    status = ProCblSpoolNameGet(p_spool, w_spool_name);    TEST_CALL_REPORT("ProCblSpoolNameGet", "ProCblCableCreate",				    status, status != PRO_TK_NO_ERROR);    error = procbl_create_cable ((Prohandle)p_harness->owner,         (Prohandle)p_harness->harness, w_spool_name, cable_name, &cable_id);    TEST_CALL_REPORT("procbl_create_cable", "ProCblCableCreate",        (ProError)error, 0);    if (error == PRODEV_INVALID_INPUT)        return (PRO_TK_E_FOUND);    if (error == PRODEV_GENERAL_ERROR)        return (PRO_TK_GENERAL_ERROR);        status = ProCblCableInit (cable_id, cable_name, p_harness, p_cable);        return (status);}/*---------------------------------------------------------------------------*\  Function : ProCblBundleCreate    Purpose  : Creates new bundle in specified harness\*---------------------------------------------------------------------------*/ProError ProCblBundleCreate (    ProCblHarness  *p_harness,      /* In: harness's handle*/    ProCblSpool    *p_spool,	    /* In: spool's name */    ProName        bundle_name,     /* In: bundle's name */    int            cable_num,       /* In: cable num */    ProCblCable    *p_cables,       /* In: the array of cables                                           to add */    int            bundle_type,     /* In: TRUE=flat, FALSE=round */    ProCblBundle   *p_bundle)       /* Out:Handle of new bundle*/{    ProError status;    int error;    int cable_id, i;    PRODEV_Name *cable_names;    ProName w_spool_name;    if (p_harness == NULL || p_cables == NULL || p_bundle == NULL)        return (PRO_TK_BAD_INPUTS);    status = ProCblSpoolNameGet(p_spool, w_spool_name);    TEST_CALL_REPORT("ProCblSpoolNameGet", "ProCblBundleCreate",				    status, status != PRO_TK_NO_ERROR);    status = ProArrayAlloc (0, sizeof (PRODEV_Name), 1,         (ProArray*)&cable_names);    for (i = 0; i < cable_num; i++)        status = ProArrayObjectAdd ((ProArray*)&cable_names, PRO_VALUE_UNUSED,            1, p_cables[i].name);    error = procbl_create_bundle ((Prohandle)p_harness->owner,         (Prohandle)p_harness->harness, w_spool_name, bundle_name, bundle_type,        cable_num, cable_names, &cable_id);    TEST_CALL_REPORT("procbl_create_bundle", "ProCblBundleCreate",						(ProError)error, 0);    /* procbl_create_bundle now sets the name to include '*' (as it should           have all along). 	Make sure that we have the right name for the ProCblCable structure. */    error = procbl_get_cable_name ((Prohandle)p_harness->harness, cable_id, bundle_name);    TEST_CALL_REPORT("procbl_get_cable_name", "ProCblBundleCreate",						(ProError)error, 0);    status = ProArrayFree ((ProArray*)&cable_names);    if (error == PRODEV_INVALID_INPUT)        return (PRO_TK_E_FOUND);    if (error == PRODEV_GENERAL_ERROR)        return (PRO_TK_GENERAL_ERROR);    status = ProCblCableInit (cable_id, bundle_name,        p_harness, (ProCblCable*)p_bundle);     return (PRO_TK_NO_ERROR);}/*---------------------------------------------------------------------------*\  Function : ProCblBundleCablesGet  Purpose  : Retrieves one parameter for the specified cable\*---------------------------------------------------------------------------*/ProError ProCblBundleCablesGet (    ProCblBundle   *p_bundle,       /* In: bundle handle */    int            level,           /* In: level:                                       -1   collect all cables                                        1   retrieve all cables included                                            in the input bundle                                        2   retrieve all cables included                                            in the first level bundle */    ProCblCable    **p_cables,      /* Out: ProArray of cables handles                                       User must free mem using ProArrayFree*/    int            *p_n_cables)       /* Out: cables number */{    int error, i, cable_id;    PRODEV_Name *p_cables_names;    if (p_bundle == NULL || p_cables == NULL || p_n_cables == NULL)        return (PRO_TK_BAD_INPUTS);    error = procbl_get_bundle_cables ((Prohandle)(p_bundle->p_owner)->harness,        p_bundle->name, level, &p_cables_names, p_n_cables);    TEST_CALL_REPORT("procbl_get_bundle_cables", "ProCblBundleCablesGet",        (ProError)error, 0);    if (error != PRODEV_NO_ERROR)        return (PRO_TK_GENERAL_ERROR);    ProArrayAlloc (*p_n_cables, sizeof (ProCblCable), 1, (ProArray*)p_cables);    for (i = 0; i < *p_n_cables; i++)    {        error = procbl_get_cable_id ((Prohandle)(p_bundle->p_owner)->harness,            p_cables_names[i], &cable_id);        TEST_CALL_REPORT("procbl_get_cable_id", "ProCblBundleCablesGet",        (ProError)error, 0);        if (error != PRODEV_NO_ERROR)            break;        ProCblCableInit (cable_id, p_cables_names[i], p_bundle->p_owner,            &(*p_cables)[i]);    }    if (error != PRODEV_NO_ERROR)    {        ProArrayFree ((ProArray*)p_cables);        return (PRO_TK_GENERAL_ERROR);    }    return (PRO_TK_NO_ERROR);}/*---------------------------------------------------------------------------*\  Function : ProCblCableParameterGet  Purpose  : Retrieves one parameter for the specified cable\*---------------------------------------------------------------------------*/ProError ProCblCableParameterGet (    ProCblCable    *p_cable,        /* In: cable's handle*/    ProName        param_name,      /* In: parameter's name */    ProCblParameterInfo *p_param_info) /* Out: parameter's info */{    int error;    if (p_cable == NULL)        return (PRO_TK_BAD_INPUTS);    error = procbl_get_cable_param ((Prohandle)((p_cable->p_owner)->owner),        (Prohandle)((p_cable->p_owner)->harness), p_cable->name, param_name,        p_param_info);    TEST_CALL_REPORT("procbl_get_cable_param", "ProCblCableParameterGet",    (ProError)error, 0);    if (error == PRODEV_INVALID_INPUT)        return (PRO_TK_E_NOT_FOUND);    if (error == PRODEV_GENERAL_ERROR)        return (PRO_TK_GENERAL_ERROR);    return (PRO_TK_NO_ERROR);}/*---------------------------------------------------------------------------*\  Function : ProCblCableParameterDelete  Purpose  : Deletes one parameter for specified cable\*---------------------------------------------------------------------------*/ProError ProCblCableParameterDelete (    ProCblCable    *p_cable,        /* In: cable's handle*/    ProName        param_name)      /* In: parameter's name*/{    int error;    if (p_cable == NULL)        return (PRO_TK_BAD_INPUTS);    error = procbl_delete_cable_param ((Prohandle)((p_cable->p_owner)->owner),        (Prohandle)((p_cable->p_owner)->harness), p_cable->name, param_name);    TEST_CALL_REPORT("procbl_delete_cable_param", "ProCblCableParameterDelete",    (ProError)error, 0);    if (error == PRODEV_INVALID_INPUT)        return (PRO_TK_BAD_INPUTS);    if (error == PRODEV_GENERAL_ERROR)        return (PRO_TK_GENERAL_ERROR);    return (PRO_TK_NO_ERROR);}/*---------------------------------------------------------------------------*\  Function : ProCblCableParametersGet  Purpose  : Retrieves the parameters, including all values associated with             multivalued parameters, for the specified cable\*---------------------------------------------------------------------------*/ProError ProCblCableParametersGet (    ProCblCable          *p_cable,       /* In: cable's handle*/    ProCblParameterInfo **p_params_info, /* Out: ProArray of parameters */    int                  *param_num)     /* Out: parameter's number*/{    int error;    if (p_cable == NULL)        return (PRO_TK_BAD_INPUTS);    error = procbl_get_cable_params ((Prohandle)((p_cable->p_owner)->owner),        (Prohandle)((p_cable->p_owner)->harness), p_cable->name,         (Pro_parameter_info**)p_params_info);    TEST_CALL_REPORT("procbl_get_cable_params", "ProCblCableParametersGet",

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91国偷自产一区二区开放时间 | 国产真实乱偷精品视频免| 精品一区二区三区视频在线观看| 国产人成亚洲第一网站在线播放| 成人午夜视频在线观看| 国产精品色呦呦| 91精品免费在线观看| 99re66热这里只有精品3直播| 蜜桃久久久久久| 亚洲午夜av在线| 中文字幕av在线一区二区三区| 欧美老肥妇做.爰bbww视频| 99久久婷婷国产综合精品电影| 蜜臀av国产精品久久久久| 亚洲精品国产一区二区精华液| 国产人久久人人人人爽| 欧美成人福利视频| 欧美精品 国产精品| 色婷婷av一区二区三区大白胸 | 国产91精品一区二区麻豆网站| 日精品一区二区三区| 亚洲精品视频在线观看网站| 亚洲国产精品二十页| 精品国产一区a| 欧美日本韩国一区二区三区视频| 成人小视频免费观看| 国产乱妇无码大片在线观看| 免费欧美在线视频| 日韩中文字幕91| 亚洲国产精品人人做人人爽| 亚洲免费资源在线播放| 国产精品毛片大码女人| 中文字幕精品综合| 中文字幕va一区二区三区| 国产欧美视频一区二区三区| 久久综合久久综合亚洲| 精品久久久久久久久久久院品网| 日韩欧美在线影院| 欧美一级高清片| 91精品国产福利在线观看| 777xxx欧美| 日韩一区二区三区四区| 777奇米四色成人影色区| 91麻豆精品国产91| 欧美一区二区精品| 日韩美女在线视频| 精品日产卡一卡二卡麻豆| 日韩一区二区免费高清| 精品国产乱码久久久久久牛牛| 日韩欧美国产成人一区二区| 日韩丝袜美女视频| ww久久中文字幕| 亚洲国产精品高清| 亚洲人成在线观看一区二区| 一区二区三区高清在线| 亚洲福利电影网| 奇米777欧美一区二区| 国产在线精品一区二区夜色| 国产黑丝在线一区二区三区| 成人18视频在线播放| 91在线无精精品入口| 欧美视频完全免费看| 欧美一级欧美三级在线观看| 久久午夜国产精品| 国产精品久久久久久亚洲伦| 亚洲综合丁香婷婷六月香| 日韩黄色免费电影| 精品一区二区三区在线播放| 菠萝蜜视频在线观看一区| 欧美在线制服丝袜| 日韩精品一区在线| 国产精品色一区二区三区| 一区二区三区鲁丝不卡| 蜜臀99久久精品久久久久久软件| 国产老肥熟一区二区三区| 91免费观看在线| 9191成人精品久久| 国产精品入口麻豆九色| 午夜久久久久久| 国产精一区二区三区| 色婷婷精品久久二区二区蜜臀av | 国产精品久久久久久福利一牛影视| 一区二区三区产品免费精品久久75| 日韩国产欧美视频| www.av亚洲| 欧美一级片免费看| 亚洲男同1069视频| 久久电影网电视剧免费观看| 91一区一区三区| 日韩免费在线观看| 亚洲精品成人悠悠色影视| 男女男精品视频| 一本色道a无线码一区v| 精品久久久久av影院| 夜夜嗨av一区二区三区中文字幕| 国产在线看一区| 欧美日韩久久久一区| 中文字幕一区免费在线观看| 欧美aaa在线| 色屁屁一区二区| 中文无字幕一区二区三区 | 欧美一区二区三区免费在线看| 国产精品私人影院| 麻豆成人在线观看| 欧美三区在线观看| 国产精品日日摸夜夜摸av| 久久不见久久见中文字幕免费| 日本韩国欧美一区| 国产精品美女久久久久aⅴ| 玖玖九九国产精品| 欧美片在线播放| 亚洲精品欧美在线| 成人精品鲁一区一区二区| 欧美成人一区二区三区在线观看 | 高清在线成人网| 欧美一区二区三区四区视频| 洋洋成人永久网站入口| 波波电影院一区二区三区| 日韩精品一区二区三区视频在线观看| 亚洲午夜精品网| 91香蕉视频在线| 国产精品毛片久久久久久久| 国产精品一区二区久激情瑜伽| 日韩免费视频一区| 免费观看91视频大全| 欧美一区二区在线不卡| 午夜电影一区二区| 欧美性生活久久| 一个色综合网站| 色系网站成人免费| 亚洲精品成a人| 91国在线观看| 亚洲一卡二卡三卡四卡| 91九色最新地址| 一区二区三区不卡视频在线观看| 色一情一伦一子一伦一区| 日韩美女久久久| 一本大道久久a久久综合婷婷 | 免费成人美女在线观看.| 欧美乱妇15p| 天堂蜜桃一区二区三区| 91精品久久久久久久91蜜桃| 日韩av在线发布| 日韩视频免费观看高清完整版 | 色婷婷av一区二区三区之一色屋| 亚洲色大成网站www久久九九| www.爱久久.com| 一区二区三区四区乱视频| 日本精品裸体写真集在线观看| 一区二区三区四区在线播放 | 91精品国产色综合久久 | 一本一本大道香蕉久在线精品 | 96av麻豆蜜桃一区二区| 亚洲综合区在线| 欧美精品三级在线观看| 美女一区二区三区| 国产日产欧美精品一区二区三区| 成人天堂资源www在线| 亚洲免费毛片网站| 欧美日韩国产综合久久| 毛片av一区二区| 国产午夜亚洲精品不卡| 成人免费看视频| 亚洲自拍都市欧美小说| 欧美日韩高清在线| 精品一二线国产| 国产精品对白交换视频 | 国产欧美日韩不卡免费| 色婷婷香蕉在线一区二区| 午夜电影一区二区| 国产日产欧美一区| 欧美写真视频网站| 久久精品国产99久久6| 国产精品美女久久久久久| 欧美视频中文一区二区三区在线观看| 免费看欧美美女黄的网站| 国产精品三级视频| 56国语精品自产拍在线观看| 国产精品1024久久| 亚洲影院理伦片| 久久亚洲精品小早川怜子| 在线一区二区三区四区| 激情综合色播五月| 亚洲日本护士毛茸茸| 欧美一级搡bbbb搡bbbb| 不卡的看片网站| 免费看欧美女人艹b| 亚洲免费三区一区二区| 久久久久久久久蜜桃| 欧美无乱码久久久免费午夜一区 | 欧美精品一区二区不卡| 91黄色在线观看| 国产一区二区不卡老阿姨| 亚洲午夜精品在线| 国产精品美女一区二区在线观看| 5858s免费视频成人| 色综合av在线| 成人综合婷婷国产精品久久| 青青草国产精品亚洲专区无| 有码一区二区三区|