00001 #ifndef _BACI_IDL_
00002 #define _BACI_IDL_
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #include <CosProperty.idl>
00033 #include <acscomponent.idl>
00034 #include <acscommon.idl>
00035 #include <acserr.idl>
00036 #include <baciErrTypeProperty.idl>
00037
00038 #pragma prefix "alma"
00039
00040
00041 module ACS {
00042
00043 interface CharacteristicComponent;
00044
00046 exception NoSuchCharacteristic {
00048 string characteristic_name;
00050 string component_name;
00051 };
00052
00068 interface CharacteristicModel {
00069
00079 any get_characteristic_by_name (in string name)
00080 raises (NoSuchCharacteristic);
00081
00091 stringSeq find_characteristic (in string reg_exp);
00092
00099 CosPropertyService::PropertySet get_all_characteristics ();
00100 };
00101
00107 interface Property : CharacteristicModel, OffShoot {
00108
00110 readonly attribute string name;
00111
00113 readonly attribute string characteristic_component_name;
00114 };
00115
00121 struct PropertyDesc {
00122
00124 Property property_ref;
00125
00127 string name;
00128
00132 CosPropertyService::PropertySet characteristics;
00133 };
00134
00136 typedef sequence <PropertyDesc> PropertyDescSeq;
00137
00138
00140 interface Subscription : OffShoot {
00141
00146 void suspend ();
00147
00153 void resume ();
00154
00159 void destroy ();
00160 };
00161
00162
00163
00169 interface Monitor : Subscription {
00173 readonly attribute Time start_time;
00174
00187 void set_timer_trigger (in TimeInterval timer);
00188
00194 void get_timer_trigger (out TimeInterval timer);
00195 };
00196
00206 interface Monitordouble : ACS::Monitor {
00207
00221 void set_value_trigger (in double delta,
00222 in boolean enable);
00223
00232 void get_value_trigger (out double delta,
00233 out boolean enable);
00234
00248 void set_value_percent_trigger (in double delta,
00249 in boolean enable);
00250
00259 void get_value_percent_trigger (out double delta,
00260 out boolean enable);
00261 };
00262
00263 interface Monitorfloat : ACS::Monitor {
00264
00278 void set_value_trigger (in float delta,
00279 in boolean enable);
00280
00289 void get_value_trigger (out float delta,
00290 out boolean enable);
00291
00305 void set_value_percent_trigger (in double delta,
00306 in boolean enable);
00307
00316 void get_value_percent_trigger (out double delta,
00317 out boolean enable);
00318 };
00319
00326 interface Monitorpattern : ACS::Monitor {
00327
00341 void set_value_trigger (in pattern delta,
00342 in boolean enable);
00343
00352 void get_value_trigger (out pattern delta,
00353 out boolean enable);
00354
00368 void set_value_percent_trigger (in double delta,
00369 in boolean enable);
00370
00379 void get_value_percent_trigger (out double delta,
00380 out boolean enable);
00381 };
00382
00387 interface Monitorstring : ACS::Monitor {
00388
00402 void set_value_trigger (in string delta,
00403 in boolean enable);
00404
00413 void get_value_trigger (out string delta,
00414 out boolean enable);
00415
00429 void set_value_percent_trigger (in double delta,
00430 in boolean enable);
00431
00440 void get_value_percent_trigger (out double delta,
00441 out boolean enable);
00442 };
00443
00450 interface MonitorstringSeq : ACS::Monitor {
00451
00465 void set_value_trigger (in stringSeq delta,
00466 in boolean enable);
00467
00476 void get_value_trigger (out stringSeq delta,
00477 out boolean enable);
00478
00492 void set_value_percent_trigger (in double delta,
00493 in boolean enable);
00494
00503 void get_value_percent_trigger (out double delta,
00504 out boolean enable);
00505 };
00506
00516 interface Monitorlong : ACS::Monitor {
00517
00531 void set_value_trigger (in long delta,
00532 in boolean enable);
00533
00542 void get_value_trigger (out long delta,
00543 out boolean enable);
00544
00558 void set_value_percent_trigger (in double delta,
00559 in boolean enable);
00560
00569 void get_value_percent_trigger (out double delta,
00570 out boolean enable);
00571 };
00572
00581 interface MonitoruLong : ACS::Monitor {
00582
00596 void set_value_trigger (in uLong delta,
00597 in boolean enable);
00598
00607 void get_value_trigger (out uLong delta,
00608 out boolean enable);
00609
00623 void set_value_percent_trigger (in double delta,
00624 in boolean enable);
00625
00634 void get_value_percent_trigger (out double delta,
00635 out boolean enable);
00636 };
00637
00646 interface MonitorlongLong : ACS::Monitor {
00647
00661 void set_value_trigger (in longLong delta,
00662 in boolean enable);
00663
00672 void get_value_trigger (out longLong delta,
00673 out boolean enable);
00674
00688 void set_value_percent_trigger (in double delta,
00689 in boolean enable);
00690
00699 void get_value_percent_trigger (out double delta,
00700 out boolean enable);
00701 };
00702
00711 interface MonitoruLongLong : ACS::Monitor {
00712
00726 void set_value_trigger (in uLongLong delta,
00727 in boolean enable);
00728
00737 void get_value_trigger (out uLongLong delta,
00738 out boolean enable);
00739
00753 void set_value_percent_trigger (in double delta,
00754 in boolean enable);
00755
00764 void get_value_percent_trigger (out double delta,
00765 out boolean enable);
00766 };
00767
00776 interface Monitorboolean : ACS::Monitor {
00777
00791 void set_value_trigger (in boolean delta,
00792 in boolean enable);
00793
00802 void get_value_trigger (out boolean delta,
00803 out boolean enable);
00804
00818 void set_value_percent_trigger (in double delta,
00819 in boolean enable);
00820
00829 void get_value_percent_trigger (out double delta,
00830 out boolean enable);
00831 };
00832
00833
00834
00841 interface TypelessProperty : Property {
00842
00844 readonly attribute string description;
00845
00847 readonly attribute string format;
00848
00850 readonly attribute string units;
00851
00855 readonly attribute pattern resolution;
00856
00862 oneway void publish_now();
00863
00864 };
00865
00871 struct CharacteristicComponentDesc {
00872
00874 ACS::CharacteristicComponent characteristic_component_ref;
00875
00877 string name;
00878
00880 PropertyDescSeq properties;
00881
00883 CosPropertyService::PropertySet characteristics;
00884 };
00885
00890 interface CharacteristicComponent : ACSComponent, CharacteristicModel {
00891
00898 CharacteristicComponentDesc descriptor ();
00899 };
00900
00901
00906 interface PropertyActionExecutor : ACSComponent {
00910 struct PropertyAlarm {
00911 string FF;
00912 string FM;
00913 long FC;
00914
00915 CosPropertyService::Properties alarmProperties;
00916 };
00917 oneway void dispatchPropertyAction(
00918 in string propertyName, in string propertyValue, in string propertyType,
00919 in PropertyAlarm alarm, in CosPropertyService::Properties extra );
00920 };
00921
00922
00926
00944 interface CBpattern : Callback {
00945
00959 oneway void working (in pattern value,
00960 in ACSErr::Completion c,
00961 in CBDescOut desc);
00962
00975 oneway void done (in pattern value,
00976 in ACSErr::Completion c,
00977 in CBDescOut desc);
00978 };
00979
00980
00981
00982
00995 interface Alarmpattern : Callback {
00996
01000 oneway void alarm_raised (in pattern value,
01001 in ACSErr::Completion c,
01002 in CBDescOut desc);
01003
01005 oneway void alarm_cleared (in pattern value,
01006 in ACSErr::Completion c,
01007 in CBDescOut desc);
01008 };
01009
01011 interface Alarmdouble : Callback {
01012
01014 oneway void alarm_raised (in double value,
01015 in ACSErr::Completion c,
01016 in CBDescOut desc);
01017
01019 oneway void alarm_cleared (in double value,
01020 in ACSErr::Completion c,
01021 in CBDescOut desc);
01022 };
01023
01025 interface Alarmfloat : Callback {
01026
01028 oneway void alarm_raised (in float value,
01029 in ACSErr::Completion c,
01030 in CBDescOut desc);
01031
01033 oneway void alarm_cleared (in float value,
01034 in ACSErr::Completion c,
01035 in CBDescOut desc);
01036 };
01037
01039 interface Alarmlong : Callback {
01040
01042 oneway void alarm_raised (in long value,
01043 in ACSErr::Completion c,
01044 in CBDescOut desc);
01045
01047 oneway void alarm_cleared (in long value,
01048 in ACSErr::Completion c,
01049 in CBDescOut desc);
01050
01051 };
01052
01054 interface AlarmuLong : Callback {
01055
01057 oneway void alarm_raised (in uLong value,
01058 in ACSErr::Completion c,
01059 in CBDescOut desc);
01060
01062 oneway void alarm_cleared (in uLong value,
01063 in ACSErr::Completion c,
01064 in CBDescOut desc);
01065
01066 };
01067
01069 interface Alarmstring : Callback {
01070
01072 oneway void alarm_raised (in string value,
01073 in ACSErr::Completion c,
01074 in CBDescOut desc);
01075
01077 oneway void alarm_cleared (in string value,
01078 in ACSErr::Completion c,
01079 in CBDescOut desc);
01080 };
01081
01083 interface Alarmboolean : Callback {
01084
01086 oneway void alarm_raised (in boolean value,
01087 in ACSErr::Completion c,
01088 in CBDescOut desc);
01089
01091 oneway void alarm_cleared (in boolean value,
01092 in ACSErr::Completion c,
01093 in CBDescOut desc);
01094
01095 };
01096
01098 interface AlarmstringSeq : Callback {
01099
01101 oneway void alarm_raised (in stringSeq value,
01102 in ACSErr::Completion c,
01103 in CBDescOut desc);
01104
01106 oneway void alarm_cleared (in stringSeq value,
01107 in ACSErr::Completion c,
01108 in CBDescOut desc);
01109 };
01110
01128 interface Pdouble : TypelessProperty {
01129
01131 readonly attribute TimeInterval default_timer_trigger;
01132
01134 readonly attribute TimeInterval min_timer_trigger;
01135
01137 readonly attribute double min_delta_trigger;
01138
01140 readonly attribute double default_value;
01141
01143 readonly attribute double graph_min;
01144
01146 readonly attribute double graph_max;
01147
01149 readonly attribute double min_step;
01150
01155 double get_sync (out ACSErr::Completion c
01156 );
01157
01163 void get_async (in CBdouble cb,
01164 in CBDescIn desc);
01165
01171 long get_history (in long n_last_values,
01172 out doubleSeq vs,
01173 out TimeSeq ts
01174 );
01175
01181 Monitordouble create_monitor (in CBdouble cb,
01182 in CBDescIn desc);
01183
01188 Monitordouble create_postponed_monitor (in Time start_time,
01189 in CBdouble cb,
01190 in CBDescIn desc);
01191
01193 };
01194
01196 interface Pfloat : TypelessProperty {
01197
01199 readonly attribute TimeInterval default_timer_trigger;
01200
01202 readonly attribute TimeInterval min_timer_trigger;
01203
01205 readonly attribute float min_delta_trigger;
01206
01208 readonly attribute float default_value;
01209
01211 readonly attribute float graph_min;
01212
01214 readonly attribute float graph_max;
01215
01217 readonly attribute float min_step;
01218
01223 float get_sync (out ACSErr::Completion c
01224 );
01225
01231 void get_async (in CBfloat cb,
01232 in CBDescIn desc);
01233
01239 long get_history (in long n_last_values,
01240 out floatSeq vs,
01241 out TimeSeq ts
01242 );
01243
01249 Monitorfloat create_monitor (in CBfloat cb,
01250 in CBDescIn desc);
01251
01256 Monitorfloat create_postponed_monitor (in Time start_time,
01257 in CBfloat cb,
01258 in CBDescIn desc);
01259
01261 };
01262
01264 interface Plong : TypelessProperty {
01265 readonly attribute TimeInterval default_timer_trigger;
01266 readonly attribute TimeInterval min_timer_trigger;
01267 readonly attribute long min_delta_trigger;
01268 readonly attribute long default_value;
01269 readonly attribute long graph_min;
01270 readonly attribute long graph_max;
01271 readonly attribute long min_step;
01272
01275 long get_sync (out ACSErr::Completion c);
01276
01279 void get_async (in CBlong cb,
01280 in CBDescIn desc);
01281
01283 long get_history (in long n_last_values,
01284 out longSeq vs,
01285 out TimeSeq ts);
01286
01289 Monitorlong create_monitor (in CBlong cb,
01290 in CBDescIn desc);
01291
01293 Monitorlong create_postponed_monitor (in Time start_time,
01294 in CBlong cb,
01295 in CBDescIn desc);
01296
01298 };
01299
01301 interface PuLong : TypelessProperty {
01302 readonly attribute TimeInterval default_timer_trigger;
01303 readonly attribute TimeInterval min_timer_trigger;
01304 readonly attribute uLong min_delta_trigger;
01305 readonly attribute uLong default_value;
01306 readonly attribute uLong graph_min;
01307 readonly attribute uLong graph_max;
01308 readonly attribute uLong min_step;
01309
01311 uLong get_sync (out ACSErr::Completion c);
01312
01314 void get_async (in CBuLong cb,
01315 in CBDescIn desc);
01316
01318 long get_history (in long n_last_values,
01319 out uLongSeq vs,
01320 out TimeSeq ts);
01321
01323 MonitoruLong create_monitor (in CBuLong cb,
01324 in CBDescIn desc);
01325
01327 MonitoruLong create_postponed_monitor (in Time start_time,
01328 in CBuLong cb,
01329 in CBDescIn desc);
01330
01332 };
01333
01343 interface Ppattern : TypelessProperty {
01344 readonly attribute TimeInterval default_timer_trigger;
01345 readonly attribute TimeInterval min_timer_trigger;
01346 readonly attribute pattern default_value;
01347
01349 readonly attribute stringSeq bitDescription;
01350
01352 readonly attribute ConditionSeq whenSet;
01353
01355 readonly attribute ConditionSeq whenCleared;
01356
01358 pattern get_sync (out ACSErr::Completion c);
01359
01361 void get_async (in CBpattern cb,
01362 in CBDescIn desc);
01363
01365 long get_history (in long n_last_values,
01366 out patternSeq vs,
01367 out TimeSeq ts);
01368
01370 Monitorpattern create_monitor ( in CBpattern cb,
01371 in CBDescIn desc);
01372
01374 Monitorpattern create_postponed_monitor (in Time start_time,
01375 in CBpattern cb,
01376 in CBDescIn desc);
01377
01379 };
01380
01386 interface Pstring : TypelessProperty {
01387 readonly attribute TimeInterval default_timer_trigger;
01388 readonly attribute TimeInterval min_timer_trigger;
01389 readonly attribute string default_value;
01390
01392 string get_sync (out ACSErr::Completion c);
01393
01395 void get_async (in CBstring cb,
01396 in CBDescIn desc);
01397
01399 long get_history (in long n_last_values,
01400 out stringSeq vs,
01401 out TimeSeq ts);
01402
01404 Monitor create_monitor (in CBstring cb,
01405 in CBDescIn desc);
01406
01408 Monitor create_postponed_monitor (in Time start_time,
01409 in CBstring cb,
01410 in CBDescIn desc);
01411
01413 };
01414
01420 interface Pboolean : TypelessProperty {
01421 readonly attribute TimeInterval default_timer_trigger;
01422 readonly attribute TimeInterval min_timer_trigger;
01423 readonly attribute boolean default_value;
01424
01426 boolean get_sync (out ACSErr::Completion c);
01427
01429 void get_async (in CBboolean cb,
01430 in CBDescIn desc);
01431
01433 long get_history (in long n_last_values,
01434 out booleanSeq vs,
01435 out TimeSeq ts);
01436
01438 Monitor create_monitor (in CBboolean cb,
01439 in CBDescIn desc);
01440
01442 Monitor create_postponed_monitor (in Time start_time,
01443 in CBboolean cb,
01444 in CBDescIn desc);
01445
01447 };
01448
01450 interface PstringSeq : TypelessProperty {
01451 readonly attribute TimeInterval default_timer_trigger;
01452 readonly attribute TimeInterval min_timer_trigger;
01453 readonly attribute stringSeq default_value;
01454
01456 stringSeq get_sync (out ACSErr::Completion c);
01457
01459 void get_async (in CBstringSeq cb,
01460 in CBDescIn desc);
01461
01463 long get_history (in long n_last_values,
01464 out stringSeqSeq vs,
01465 out TimeSeq ts);
01466
01468 MonitorstringSeq create_monitor (in CBstringSeq cb,
01469 in CBDescIn desc);
01470
01472 MonitorstringSeq create_postponed_monitor (in Time start_time,
01473 in CBstringSeq cb,
01474 in CBDescIn desc);
01475
01477 };
01478
01480 interface PbooleanSeq : TypelessProperty {
01481 readonly attribute TimeInterval default_timer_trigger;
01482 readonly attribute TimeInterval min_timer_trigger;
01483 readonly attribute boolean default_value;
01484
01486 booleanSeq get_sync (out ACSErr::Completion c);
01487
01489 void get_async (in CBbooleanSeq cb,
01490 in CBDescIn desc);
01491
01493 long get_history (in long n_last_values,
01494 out booleanSeqSeq vs,
01495 out TimeSeq ts);
01496
01498 Monitorboolean create_monitor (in CBbooleanSeq cb,
01499 in CBDescIn desc);
01500
01502 Monitorboolean create_postponed_monitor (in Time start_time,
01503 in CBbooleanSeq cb,
01504 in CBDescIn desc);
01505
01507 };
01508
01515 interface PdoubleSeq : TypelessProperty {
01516 readonly attribute TimeInterval default_timer_trigger;
01517 readonly attribute TimeInterval min_timer_trigger;
01518 readonly attribute double min_delta_trigger;
01519 readonly attribute double default_value;
01520 readonly attribute double graph_min;
01521 readonly attribute double graph_max;
01522 readonly attribute double min_step;
01523
01525 doubleSeq get_sync (out ACSErr::Completion c);
01526
01528 void get_async (in CBdoubleSeq cb,
01529 in CBDescIn desc);
01530
01532 long get_history (in long n_last_values,
01533 out doubleSeqSeq vs,
01534 out TimeSeq ts);
01535
01537 Monitordouble create_monitor (in CBdoubleSeq cb,
01538 in CBDescIn desc);
01539
01541 Monitordouble create_postponed_monitor (in Time start_time,
01542 in CBdoubleSeq cb,
01543 in CBDescIn desc);
01544
01546 };
01547
01548
01555 interface PfloatSeq : TypelessProperty {
01556 readonly attribute TimeInterval default_timer_trigger;
01557 readonly attribute TimeInterval min_timer_trigger;
01558 readonly attribute float min_delta_trigger;
01559 readonly attribute float default_value;
01560 readonly attribute float graph_min;
01561 readonly attribute float graph_max;
01562 readonly attribute float min_step;
01563
01565 floatSeq get_sync (out ACSErr::Completion c);
01566
01568 void get_async (in CBfloatSeq cb,
01569 in CBDescIn desc);
01570
01572 long get_history (in long n_last_values,
01573 out floatSeqSeq vs,
01574 out TimeSeq ts);
01575
01577 Monitorfloat create_monitor (in CBfloatSeq cb,
01578 in CBDescIn desc);
01579
01581 Monitorfloat create_postponed_monitor (in Time start_time,
01582 in CBfloatSeq cb,
01583 in CBDescIn desc);
01584
01586 };
01587
01589 interface PlongSeq : TypelessProperty {
01590 readonly attribute TimeInterval default_timer_trigger;
01591 readonly attribute TimeInterval min_timer_trigger;
01592 readonly attribute long min_delta_trigger;
01593 readonly attribute long default_value;
01594 readonly attribute long graph_min;
01595 readonly attribute long graph_max;
01596 readonly attribute long min_step;
01597
01599 longSeq get_sync (out ACSErr::Completion c);
01600
01602 void get_async (in CBlongSeq cb,
01603 in CBDescIn desc);
01604
01606 long get_history (in long n_last_values,
01607 out longSeqSeq vs,
01608 out TimeSeq ts);
01609
01611 Monitorlong create_monitor (in CBlongSeq cb,
01612 in CBDescIn desc);
01613
01615 Monitorlong create_postponed_monitor (in Time start_time,
01616 in CBlongSeq cb,
01617 in CBDescIn desc);
01618
01620 };
01621
01623 interface PuLongSeq : TypelessProperty {
01624 readonly attribute TimeInterval default_timer_trigger;
01625 readonly attribute TimeInterval min_timer_trigger;
01626 readonly attribute uLong min_delta_trigger;
01627 readonly attribute uLong default_value;
01628 readonly attribute uLong graph_min;
01629 readonly attribute uLong graph_max;
01630 readonly attribute uLong min_step;
01631
01633 uLongSeq get_sync (out ACSErr::Completion c);
01634
01636 void get_async (in CBuLongSeq cb,
01637 in CBDescIn desc);
01638
01640 long get_history (in long n_last_values,
01641 out uLongSeqSeq vs,
01642 out TimeSeq ts);
01643
01645 MonitoruLong create_monitor (in CBuLongSeq cb,
01646 in CBDescIn desc);
01647
01649 MonitoruLong create_postponed_monitor (in Time start_time,
01650 in CBuLongSeq cb,
01651 in CBDescIn desc);
01652
01654 };
01655
01663 interface ROdouble : Pdouble {
01664
01666 readonly attribute double alarm_low_on;
01667
01669 readonly attribute double alarm_low_off;
01670
01672 readonly attribute double alarm_high_on;
01673
01675 readonly attribute double alarm_high_off;
01676
01685 Subscription new_subscription_Alarm (in Alarmdouble cb,
01686 in CBDescIn desc);
01687
01688
01689 void enable_alarm_system();
01690
01691
01692 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
01693
01694
01695 boolean alarm_system_enabled();
01696
01697 };
01698
01706 interface RWdouble : Pdouble {
01707
01708 readonly attribute double min_value;
01709 readonly attribute double max_value;
01710
01715 ACSErr::Completion set_sync (in double value);
01716
01723 void set_async (in double value,
01724 in CBvoid cb,
01725 in CBDescIn desc);
01726
01731 void set_nonblocking (in double value);
01732
01734 void increment (in CBvoid cb,
01735 in CBDescIn desc);
01736
01738 void decrement (in CBvoid cb,
01739 in CBDescIn desc);
01740
01742 };
01743
01745 interface ROfloat : Pfloat {
01746
01748 readonly attribute float alarm_low_on;
01749
01751 readonly attribute float alarm_low_off;
01752
01754 readonly attribute float alarm_high_on;
01755
01757 readonly attribute float alarm_high_off;
01758
01767 Subscription new_subscription_Alarm (in Alarmfloat cb,
01768 in CBDescIn desc);
01769
01770
01771 void enable_alarm_system();
01772
01773
01774 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
01775
01776
01777 boolean alarm_system_enabled();
01778
01779 };
01780
01788 interface RWfloat : Pfloat {
01789
01790 readonly attribute float min_value;
01791 readonly attribute float max_value;
01792
01797 ACSErr::Completion set_sync (in float value);
01798
01805 void set_async (in float value,
01806 in CBvoid cb,
01807 in CBDescIn desc);
01808
01813 void set_nonblocking (in float value);
01814
01816 void increment (in CBvoid cb,
01817 in CBDescIn desc);
01818
01820 void decrement (in CBvoid cb,
01821 in CBDescIn desc);
01822
01824 };
01825
01827 interface ROpattern : Ppattern {
01828
01830 readonly attribute pattern alarm_mask;
01831
01833 readonly attribute pattern alarm_trigger;
01834
01836 Subscription new_subscription_Alarm (in Alarmpattern cb,
01837 in CBDescIn desc);
01838
01839
01840 void enable_alarm_system();
01841
01842
01843 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
01844
01845
01846 boolean alarm_system_enabled();
01847
01849 };
01850
01852 interface RWpattern : Ppattern {
01854 ACSErr::Completion set_sync (in pattern value);
01855
01857 void set_async (in pattern value,
01858 in CBvoid cb,
01859 in CBDescIn desc);
01860
01862 void set_nonblocking (in pattern value);
01863
01865 };
01866
01868 interface RWstring : Pstring {
01870 ACSErr::Completion set_sync (in string value);
01871
01873 void set_async (in string value,
01874 in CBvoid cb,
01875 in CBDescIn desc);
01876
01878 void set_nonblocking (in string value);
01879
01881 };
01882
01884 interface ROstring : Pstring {
01885
01887 Subscription new_subscription_Alarm (in Alarmstring cb,
01888 in CBDescIn desc);
01889
01890
01891 void enable_alarm_system();
01892
01893
01894 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
01895
01896
01897 boolean alarm_system_enabled();
01898
01899 };
01900
01902 interface ROstringSeq : PstringSeq {
01904 Subscription new_subscription_Alarm (in AlarmstringSeq cb,
01905 in CBDescIn desc);
01906
01907
01908 void enable_alarm_system();
01909
01910
01911 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
01912
01913
01914 boolean alarm_system_enabled();
01915 };
01916
01917
01919 interface RWboolean : Pboolean {
01921 readonly attribute boolean min_value;
01922
01924 readonly attribute boolean max_value;
01925
01927 ACSErr::Completion set_sync (in boolean value);
01928
01930 void set_async (in boolean value,
01931 in CBvoid cb,
01932 in CBDescIn desc);
01933
01935 void set_nonblocking (in boolean value);
01936
01938 };
01939
01941 interface ROboolean : Pboolean {
01942
01944 Subscription new_subscription_Alarm (in Alarmboolean cb,
01945 in CBDescIn desc);
01946
01947
01948 void enable_alarm_system();
01949
01950
01951 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
01952
01953
01954 boolean alarm_system_enabled();
01955
01956 };
01957
01959 interface RObooleanSeq : PbooleanSeq {
01961 Subscription new_subscription_Alarm (in Alarmboolean cb,
01962 in CBDescIn desc);
01963
01964
01965 void enable_alarm_system();
01966
01967
01968 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
01969
01970
01971 boolean alarm_system_enabled();
01972 };
01973
01975 interface RWbooleanSeq : PbooleanSeq {
01977 readonly attribute boolean min_value;
01978
01980 readonly attribute boolean max_value;
01981
01983 ACSErr::Completion set_sync (in booleanSeq value);
01984
01986 void set_async (in booleanSeq value,
01987 in CBvoid cb,
01988 in CBDescIn desc);
01989
01992 void set_nonblocking (in booleanSeq value);
01993
01995 void increment (in CBvoid cb,
01996 in CBDescIn desc);
01997
01999 void decrement (in CBvoid cb,
02000 in CBDescIn desc);
02001
02003 };
02004
02005
02007 interface ROdoubleSeq : PdoubleSeq {
02008 readonly attribute double alarm_low_on;
02009 readonly attribute double alarm_low_off;
02010 readonly attribute double alarm_high_on;
02011 readonly attribute double alarm_high_off;
02012
02014 Subscription new_subscription_Alarm (in Alarmdouble cb,
02015 in CBDescIn desc);
02016
02017
02018 void enable_alarm_system();
02019
02020
02021 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
02022
02023
02024 boolean alarm_system_enabled();
02025
02027 };
02028
02030 interface RWdoubleSeq : PdoubleSeq {
02032 readonly attribute double min_value;
02033
02035 readonly attribute double max_value;
02036
02038 ACSErr::Completion set_sync (in doubleSeq value);
02039
02041 void set_async (in doubleSeq value,
02042 in CBvoid cb,
02043 in CBDescIn desc);
02044
02047 void set_nonblocking (in doubleSeq value);
02048
02050 void increment (in CBvoid cb,
02051 in CBDescIn desc);
02052
02054 void decrement (in CBvoid cb,
02055 in CBDescIn desc);
02056
02058 };
02059
02061 interface ROfloatSeq : PfloatSeq {
02062 readonly attribute float alarm_low_on;
02063 readonly attribute float alarm_low_off;
02064 readonly attribute float alarm_high_on;
02065 readonly attribute float alarm_high_off;
02066
02068 Subscription new_subscription_Alarm (in Alarmfloat cb,
02069 in CBDescIn desc);
02070
02071
02072 void enable_alarm_system();
02073
02074
02075 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
02076
02077
02078 boolean alarm_system_enabled();
02079
02081 };
02082
02084 interface RWfloatSeq : PfloatSeq {
02086 readonly attribute float min_value;
02087
02089 readonly attribute float max_value;
02090
02092 ACSErr::Completion set_sync (in floatSeq value);
02093
02095 void set_async (in floatSeq value,
02096 in CBvoid cb,
02097 in CBDescIn desc);
02098
02101 void set_nonblocking (in floatSeq value);
02102
02104 void increment (in CBvoid cb,
02105 in CBDescIn desc);
02106
02108 void decrement (in CBvoid cb,
02109 in CBDescIn desc);
02110
02112 };
02113
02115 interface ROlongSeq : PlongSeq {
02117 readonly attribute long alarm_low_on;
02119 readonly attribute long alarm_low_off;
02121 readonly attribute long alarm_high_on;
02123 readonly attribute long alarm_high_off;
02124
02126 Subscription new_subscription_Alarm (in Alarmlong cb,
02127 in CBDescIn desc);
02128
02129
02130 void enable_alarm_system();
02131
02132
02133 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
02134
02135
02136 boolean alarm_system_enabled();
02137
02139 };
02140
02142 interface RWlongSeq : PlongSeq {
02144 readonly attribute long min_value;
02145
02147 readonly attribute long max_value;
02148
02150 ACSErr::Completion set_sync (in longSeq value);
02151
02153 void set_async (in longSeq value,
02154 in CBvoid cb,
02155 in CBDescIn desc);
02156
02158 void set_nonblocking (in longSeq value);
02159
02161 void increment (in CBvoid cb,
02162 in CBDescIn desc);
02163
02165 void decrement (in CBvoid cb,
02166 in CBDescIn desc);
02167
02169 };
02170
02172 interface ROuLongSeq : PuLongSeq {
02174 readonly attribute uLong alarm_low_on;
02176 readonly attribute uLong alarm_low_off;
02178 readonly attribute uLong alarm_high_on;
02180 readonly attribute uLong alarm_high_off;
02181
02183 Subscription new_subscription_Alarm (in AlarmuLong cb,
02184 in CBDescIn desc);
02185
02186
02187 void enable_alarm_system();
02188
02189
02190 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
02191
02192
02193 boolean alarm_system_enabled();
02194
02196 };
02197
02199 interface RWuLongSeq : PuLongSeq {
02201 readonly attribute uLong min_value;
02202
02204 readonly attribute uLong max_value;
02205
02207 ACSErr::Completion set_sync (in uLongSeq value);
02208
02210 void set_async (in uLongSeq value,
02211 in CBvoid cb,
02212 in CBDescIn desc);
02213
02215 void set_nonblocking (in uLongSeq value);
02216
02218 void increment (in CBvoid cb,
02219 in CBDescIn desc);
02220
02222 void decrement (in CBvoid cb,
02223 in CBDescIn desc);
02224
02226 };
02227
02229 interface ROlong : Plong {
02230 readonly attribute long alarm_low_on;
02231 readonly attribute long alarm_low_off;
02232 readonly attribute long alarm_high_on;
02233 readonly attribute long alarm_high_off;
02234
02237 Subscription new_subscription_Alarm (in Alarmlong cb,
02238 in CBDescIn desc);
02239
02240
02241 void enable_alarm_system();
02242
02243
02244 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
02245
02246
02247 boolean alarm_system_enabled();
02248
02250 };
02251
02253 interface RWlong : Plong {
02255 ACSErr::Completion set_sync (in long value);
02256
02258 void set_async (in long value,
02259 in CBvoid cb,
02260 in CBDescIn desc);
02261
02263 void set_nonblocking (in long value);
02264
02269 void increment (in CBvoid cb,
02270 in CBDescIn desc);
02271
02276 void decrement (in CBvoid cb,
02277 in CBDescIn desc);
02278
02280 readonly attribute long max_value;
02281 readonly attribute long min_value;
02282 };
02283
02285 interface ROuLong : PuLong {
02286 readonly attribute uLong alarm_low_on;
02287 readonly attribute uLong alarm_low_off;
02288 readonly attribute uLong alarm_high_on;
02289 readonly attribute uLong alarm_high_off;
02290
02292 Subscription new_subscription_Alarm (in AlarmuLong cb,
02293 in CBDescIn desc);
02294
02295
02296 void enable_alarm_system();
02297
02298
02299 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
02300
02301
02302 boolean alarm_system_enabled();
02303
02306 };
02307
02309 interface RWuLong : PuLong {
02310
02312 ACSErr::Completion set_sync (in uLong value);
02313
02315 void set_async (in uLong value,
02316 in CBvoid cb,
02317 in CBDescIn desc);
02318
02320 void set_nonblocking (in uLong value);
02321
02326 void increment (in CBvoid cb,
02327 in CBDescIn desc);
02328
02333 void decrement (in CBvoid cb,
02334 in CBDescIn desc);
02335
02337 readonly attribute uLong max_value;
02338 readonly attribute uLong min_value;
02339 };
02340
02341
02342
02343 interface PlongLong : TypelessProperty {
02344 readonly attribute TimeInterval default_timer_trigger;
02345 readonly attribute TimeInterval min_timer_trigger;
02346 readonly attribute longLong min_delta_trigger;
02347 readonly attribute longLong default_value;
02348 readonly attribute longLong graph_min;
02349 readonly attribute longLong graph_max;
02350 readonly attribute longLong min_step;
02351
02353 longLong get_sync (out ACSErr::Completion c);
02354
02356 void get_async (in CBlongLong cb,
02357 in CBDescIn desc);
02358
02360 long get_history (in long n_last_values,
02361 out longLongSeq vs,
02362 out TimeSeq ts);
02363
02365 MonitorlongLong create_monitor (in CBlongLong cb,
02366 in CBDescIn desc);
02367
02369 MonitorlongLong create_postponed_monitor (in Time start_time,
02370 in CBlongLong cb,
02371 in CBDescIn desc);
02372
02374 };
02375
02376 interface AlarmlongLong : Callback {
02378 oneway void alarm_raised (in longLong value,
02379 in ACSErr::Completion c,
02380 in CBDescOut desc);
02381
02383 oneway void alarm_cleared (in longLong value,
02384 in ACSErr::Completion c,
02385 in CBDescOut desc);
02386 };
02387
02388 interface ROlongLong : PlongLong {
02389 readonly attribute longLong alarm_low_on;
02390 readonly attribute longLong alarm_low_off;
02391 readonly attribute longLong alarm_high_on;
02392 readonly attribute longLong alarm_high_off;
02393
02395 Subscription new_subscription_Alarm (in AlarmlongLong cb,
02396 in CBDescIn desc);
02397
02398
02399 void enable_alarm_system();
02400
02401
02402 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
02403
02404
02405 boolean alarm_system_enabled();
02406
02409 };
02410
02411 interface RWlongLong : PlongLong {
02413 ACSErr::Completion set_sync (in longLong value);
02414
02416 void set_async (in longLong value,
02417 in CBvoid cb,
02418 in CBDescIn desc);
02419
02421 void set_nonblocking (in longLong value);
02422
02427 void increment (in CBvoid cb,
02428 in CBDescIn desc);
02429
02432 void decrement (in CBvoid cb,
02433 in CBDescIn desc);
02434
02436 readonly attribute longLong max_value;
02437 readonly attribute longLong min_value;
02438 };
02439
02440
02441
02442
02443
02444 interface PuLongLong : TypelessProperty {
02445 readonly attribute TimeInterval default_timer_trigger;
02446 readonly attribute TimeInterval min_timer_trigger;
02447 readonly attribute uLongLong min_delta_trigger;
02448 readonly attribute uLongLong default_value;
02449 readonly attribute uLongLong graph_min;
02450 readonly attribute uLongLong graph_max;
02451 readonly attribute uLongLong min_step;
02452
02454 uLongLong get_sync (out ACSErr::Completion c);
02455
02457 void get_async (in CBuLongLong cb,
02458 in CBDescIn desc);
02459
02461 long get_history (in long n_last_values,
02462 out uLongLongSeq vs,
02463 out TimeSeq ts);
02464
02466 MonitoruLongLong create_monitor (in CBuLongLong cb,
02467 in CBDescIn desc);
02468
02470 MonitoruLongLong create_postponed_monitor (in Time start_time,
02471 in CBuLongLong cb,
02472 in CBDescIn desc);
02473
02475 };
02476
02477 interface AlarmuLongLong : Callback {
02478
02480 oneway void alarm_raised (in uLongLong value,
02481 in ACSErr::Completion c,
02482 in CBDescOut desc);
02483
02485 oneway void alarm_cleared (in uLongLong value,
02486 in ACSErr::Completion c,
02487 in CBDescOut desc);
02488
02489 };
02490
02491 interface ROuLongLong : PuLongLong {
02492 readonly attribute uLongLong alarm_low_on;
02493 readonly attribute uLongLong alarm_low_off;
02494 readonly attribute uLongLong alarm_high_on;
02495 readonly attribute uLongLong alarm_high_off;
02496
02498 Subscription new_subscription_Alarm (in AlarmuLongLong cb,
02499 in CBDescIn desc);
02500
02501
02502 void enable_alarm_system();
02503
02504
02505 void disable_alarm_system() raises (baciErrTypeProperty::DisableAlarmsErrorEx);
02506
02507
02508 boolean alarm_system_enabled();
02509
02512 };
02513
02514 interface RWuLongLong : PuLongLong {
02515
02517 ACSErr::Completion set_sync (in uLongLong value);
02518
02520 void set_async (in uLongLong value,
02521 in CBvoid cb,
02522 in CBDescIn desc);
02523
02525 void set_nonblocking (in uLongLong value);
02526
02531 void increment (in CBvoid cb,
02532 in CBDescIn desc);
02533
02538 void decrement (in CBvoid cb,
02539 in CBDescIn desc);
02540
02542 readonly attribute uLongLong max_value;
02543 readonly attribute uLongLong min_value;
02544 };
02545 };
02546
02547 #endif