⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ccs.idl

📁 这是广泛使用的通信开源项目,对于大容量,高并发的通讯要求完全能够胜任,他广泛可用于网络游戏医学图像网关的高qos要求.更详细的内容可阅读相应的材料
💻 IDL
字号:
// CCS.idl,v 1.1 1999/08/24 21:35:32 mm4 Exp
// ============================================================================
//
// = LIBRARY
//    TAO/examples/Advanced/ch_8_and_10
//
// = FILENAME
//    CCS.idl
//
// = AUTHORS
//   Source code used in TAO has been modified and adapted from the code
//   provided in the book, "Advanced CORBA Programming with C++" by Michi
//   Henning and Steve Vinoski. Copyright 1999. Addison-Wesley, Reading,
//   MA.
//
//   Modified for TAO by Mike Moran <mm4@cs.wustl.edu>
//
// ============================================================================



#pragma prefix "acme.com"

module CCS {
    typedef unsigned long   AssetType;
    typedef string          ModelType;
    typedef short           TempType;
    typedef string          LocType;

    interface Thermometer {
        readonly attribute ModelType    model;
        readonly attribute AssetType    asset_num;
        readonly attribute TempType     temperature;
                 attribute LocType      location;
    };

    interface Thermostat : Thermometer {
        struct BtData {
            TempType    requested;
            TempType    min_permitted;
            TempType    max_permitted;
            string      error_msg;
        };
        exception BadTemp { BtData details; };

        TempType    get_nominal();
        TempType    set_nominal(in TempType new_temp)
                        raises(BadTemp);
    };

    interface Controller {
        typedef sequence<Thermometer>   ThermometerSeq;
        typedef sequence<Thermostat>    ThermostatSeq;

        enum SearchCriterion { ASSET, LOCATION, MODEL };

        union KeyType switch(SearchCriterion) {
        case ASSET:
            AssetType   asset_num;
        case LOCATION:
            LocType     loc;
        case MODEL:
            ModelType   model_desc;
        };

        struct SearchType {
            KeyType     key;
            Thermometer device;
        };
        typedef sequence<SearchType>    SearchSeq;

        struct ErrorDetails {
            Thermostat          tmstat_ref;
            Thermostat::BtData  info;
        };
        typedef sequence<ErrorDetails>  ErrSeq;

        exception EChange {
            ErrSeq  errors;
        };

        ThermometerSeq  list();
        void            find(inout SearchSeq slist);
        void            change(
                            in ThermostatSeq tlist, in short delta
                        ) raises(EChange);
    };
};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -