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
00037 #pragma prefix "alma"
00038
00039
00040 module ACS {
00041
00042 interface CharacteristicComponent;
00043
00045 exception NoSuchCharacteristic {
00047 string characteristic_name;
00049 string component_name;
00050 };
00051
00067 interface CharacteristicModel {
00068
00078 any get_characteristic_by_name (in string name)
00079 raises (NoSuchCharacteristic);
00080
00090 stringSeq find_characteristic (in string reg_exp);
00091
00098 CosPropertyService::PropertySet get_all_characteristics ();
00099 };
00100
00106 interface Property : CharacteristicModel, OffShoot {
00107
00109 readonly attribute string name;
00110
00112 readonly attribute string characteristic_component_name;
00113 };
00114
00120 struct PropertyDesc {
00121
00123 Property property_ref;
00124
00126 string name;
00127
00131 CosPropertyService::PropertySet characteristics;
00132 };
00133
00135 typedef sequence <PropertyDesc> PropertyDescSeq;
00136
00137
00139 interface Subscription : OffShoot {
00140
00145 void suspend ();
00146
00152 void resume ();
00153
00158 void destroy ();
00159 };
00160
00161
00162
00168 interface Monitor : Subscription {
00172 readonly attribute Time start_time;
00173
00186 void set_timer_trigger (in TimeInterval timer);
00187
00193 void get_timer_trigger (out TimeInterval timer);
00194 };
00195
00205 interface Monitordouble : ACS::Monitor {
00206
00220 void set_value_trigger (in double delta,
00221 in boolean enable);
00222
00231 void get_value_trigger (out double delta,
00232 out boolean enable);
00233
00247 void set_value_percent_trigger (in double delta,
00248 in boolean enable);
00249
00258 void get_value_percent_trigger (out double delta,
00259 out boolean enable);
00260 };
00261
00262 interface Monitorfloat : ACS::Monitor {
00263
00277 void set_value_trigger (in float delta,
00278 in boolean enable);
00279
00288 void get_value_trigger (out float delta,
00289 out boolean enable);
00290
00304 void set_value_percent_trigger (in double delta,
00305 in boolean enable);
00306
00315 void get_value_percent_trigger (out double delta,
00316 out boolean enable);
00317 };
00318
00325 interface Monitorpattern : ACS::Monitor {
00326
00340 void set_value_trigger (in pattern delta,
00341 in boolean enable);
00342
00351 void get_value_trigger (out pattern delta,
00352 out boolean enable);
00353
00367 void set_value_percent_trigger (in double delta,
00368 in boolean enable);
00369
00378 void get_value_percent_trigger (out double delta,
00379 out boolean enable);
00380 };
00381
00386 interface Monitorstring : ACS::Monitor {
00387
00401 void set_value_trigger (in string delta,
00402 in boolean enable);
00403
00412 void get_value_trigger (out string delta,
00413 out boolean enable);
00414
00428 void set_value_percent_trigger (in double delta,
00429 in boolean enable);
00430
00439 void get_value_percent_trigger (out double delta,
00440 out boolean enable);
00441 };
00442
00449 interface MonitorstringSeq : ACS::Monitor {
00450
00464 void set_value_trigger (in stringSeq delta,
00465 in boolean enable);
00466
00475 void get_value_trigger (out stringSeq delta,
00476 out boolean enable);
00477
00491 void set_value_percent_trigger (in double delta,
00492 in boolean enable);
00493
00502 void get_value_percent_trigger (out double delta,
00503 out boolean enable);
00504 };
00505
00515 interface Monitorlong : ACS::Monitor {
00516
00530 void set_value_trigger (in long delta,
00531 in boolean enable);
00532
00541 void get_value_trigger (out long delta,
00542 out boolean enable);
00543
00557 void set_value_percent_trigger (in double delta,
00558 in boolean enable);
00559
00568 void get_value_percent_trigger (out double delta,
00569 out boolean enable);
00570 };
00571
00580 interface MonitorlongLong : ACS::Monitor {
00581
00595 void set_value_trigger (in longLong delta,
00596 in boolean enable);
00597
00606 void get_value_trigger (out longLong delta,
00607 out boolean enable);
00608
00622 void set_value_percent_trigger (in double delta,
00623 in boolean enable);
00624
00633 void get_value_percent_trigger (out double delta,
00634 out boolean enable);
00635 };
00636
00645 interface MonitoruLongLong : ACS::Monitor {
00646
00660 void set_value_trigger (in uLongLong delta,
00661 in boolean enable);
00662
00671 void get_value_trigger (out uLongLong delta,
00672 out boolean enable);
00673
00687 void set_value_percent_trigger (in double delta,
00688 in boolean enable);
00689
00698 void get_value_percent_trigger (out double delta,
00699 out boolean enable);
00700 };
00701
00702
00703
00704
00711 interface TypelessProperty : Property {
00712
00714 readonly attribute string description;
00715
00717 readonly attribute string format;
00718
00720 readonly attribute string units;
00721
00725 readonly attribute pattern resolution;
00726
00727 };
00728
00734 struct CharacteristicComponentDesc {
00735
00737 ACS::CharacteristicComponent characteristic_component_ref;
00738
00740 string name;
00741
00743 PropertyDescSeq properties;
00744
00746 CosPropertyService::PropertySet characteristics;
00747 };
00748
00753 interface CharacteristicComponent : ACSComponent, CharacteristicModel {
00754
00761 CharacteristicComponentDesc descriptor ();
00762 };
00763
00764
00769 interface PropertyActionExecutor : ACSComponent {
00773 struct PropertyAlarm {
00774 string FF;
00775 string FM;
00776 long FC;
00777
00778 CosPropertyService::Properties alarmProperties;
00779 };
00780 oneway void dispatchPropertyAction(
00781 in string propertyName, in string propertyValue, in string propertyType,
00782 in PropertyAlarm alarm, in CosPropertyService::Properties extra );
00783 };
00784
00785
00789
00807 interface CBpattern : Callback {
00808
00822 oneway void working (in pattern value,
00823 in ACSErr::Completion c,
00824 in CBDescOut desc);
00825
00838 oneway void done (in pattern value,
00839 in ACSErr::Completion c,
00840 in CBDescOut desc);
00841 };
00842
00843
00844
00845
00858 interface Alarmpattern : Callback {
00859
00863 oneway void alarm_raised (in pattern value,
00864 in ACSErr::Completion c,
00865 in CBDescOut desc);
00866
00868 oneway void alarm_cleared (in pattern value,
00869 in ACSErr::Completion c,
00870 in CBDescOut desc);
00871 };
00872
00874 interface Alarmdouble : Callback {
00875
00877 oneway void alarm_raised (in double value,
00878 in ACSErr::Completion c,
00879 in CBDescOut desc);
00880
00882 oneway void alarm_cleared (in double value,
00883 in ACSErr::Completion c,
00884 in CBDescOut desc);
00885 };
00886
00888 interface Alarmfloat : Callback {
00889
00891 oneway void alarm_raised (in float value,
00892 in ACSErr::Completion c,
00893 in CBDescOut desc);
00894
00896 oneway void alarm_cleared (in float value,
00897 in ACSErr::Completion c,
00898 in CBDescOut desc);
00899 };
00900
00902 interface Alarmlong : Callback {
00903
00905 oneway void alarm_raised (in long value,
00906 in ACSErr::Completion c,
00907 in CBDescOut desc);
00908
00910 oneway void alarm_cleared (in long value,
00911 in ACSErr::Completion c,
00912 in CBDescOut desc);
00913
00914 };
00915
00917 interface Alarmstring : Callback {
00918
00920 oneway void alarm_raised (in string value,
00921 in ACSErr::Completion c,
00922 in CBDescOut desc);
00923
00925 oneway void alarm_cleared (in string value,
00926 in ACSErr::Completion c,
00927 in CBDescOut desc);
00928 };
00929
00931 interface AlarmstringSeq : Callback {
00932
00934 oneway void alarm_raised (in stringSeq value,
00935 in ACSErr::Completion c,
00936 in CBDescOut desc);
00937
00939 oneway void alarm_cleared (in stringSeq value,
00940 in ACSErr::Completion c,
00941 in CBDescOut desc);
00942 };
00943
00961 interface Pdouble : TypelessProperty {
00962
00964 readonly attribute TimeInterval default_timer_trigger;
00965
00967 readonly attribute TimeInterval min_timer_trigger;
00968
00970 readonly attribute double min_delta_trigger;
00971
00973 readonly attribute double default_value;
00974
00976 readonly attribute double graph_min;
00977
00979 readonly attribute double graph_max;
00980
00982 readonly attribute double min_step;
00983
00988 double get_sync (out ACSErr::Completion c
00989 );
00990
00996 void get_async (in CBdouble cb,
00997 in CBDescIn desc);
00998
01004 long get_history (in long n_last_values,
01005 out doubleSeq vs,
01006 out TimeSeq ts
01007 );
01008
01014 Monitordouble create_monitor (in CBdouble cb,
01015 in CBDescIn desc);
01016
01021 Monitordouble create_postponed_monitor (in Time start_time,
01022 in CBdouble cb,
01023 in CBDescIn desc);
01024
01026 };
01027
01029 interface Pfloat : TypelessProperty {
01030
01032 readonly attribute TimeInterval default_timer_trigger;
01033
01035 readonly attribute TimeInterval min_timer_trigger;
01036
01038 readonly attribute float min_delta_trigger;
01039
01041 readonly attribute float default_value;
01042
01044 readonly attribute float graph_min;
01045
01047 readonly attribute float graph_max;
01048
01050 readonly attribute float min_step;
01051
01056 float get_sync (out ACSErr::Completion c
01057 );
01058
01064 void get_async (in CBfloat cb,
01065 in CBDescIn desc);
01066
01072 long get_history (in long n_last_values,
01073 out floatSeq vs,
01074 out TimeSeq ts
01075 );
01076
01082 Monitorfloat create_monitor (in CBfloat cb,
01083 in CBDescIn desc);
01084
01089 Monitorfloat create_postponed_monitor (in Time start_time,
01090 in CBfloat cb,
01091 in CBDescIn desc);
01092
01094 };
01095
01097 interface Plong : TypelessProperty {
01098 readonly attribute TimeInterval default_timer_trigger;
01099 readonly attribute TimeInterval min_timer_trigger;
01100 readonly attribute long min_delta_trigger;
01101 readonly attribute long default_value;
01102 readonly attribute long graph_min;
01103 readonly attribute long graph_max;
01104 readonly attribute long min_step;
01105
01108 long get_sync (out ACSErr::Completion c);
01109
01112 void get_async (in CBlong cb,
01113 in CBDescIn desc);
01114
01116 long get_history (in long n_last_values,
01117 out longSeq vs,
01118 out TimeSeq ts);
01119
01122 Monitorlong create_monitor (in CBlong cb,
01123 in CBDescIn desc);
01124
01126 Monitorlong create_postponed_monitor (in Time start_time,
01127 in CBlong cb,
01128 in CBDescIn desc);
01129
01131 };
01132
01142 interface Ppattern : TypelessProperty {
01143 readonly attribute TimeInterval default_timer_trigger;
01144 readonly attribute TimeInterval min_timer_trigger;
01145 readonly attribute pattern default_value;
01146
01148 readonly attribute stringSeq bitDescription;
01149
01151 readonly attribute ConditionSeq whenSet;
01152
01154 readonly attribute ConditionSeq whenCleared;
01155
01157 pattern get_sync (out ACSErr::Completion c);
01158
01160 void get_async (in CBpattern cb,
01161 in CBDescIn desc);
01162
01164 long get_history (in long n_last_values,
01165 out patternSeq vs,
01166 out TimeSeq ts);
01167
01169 Monitorpattern create_monitor ( in CBpattern cb,
01170 in CBDescIn desc);
01171
01173 Monitorpattern create_postponed_monitor (in Time start_time,
01174 in CBpattern cb,
01175 in CBDescIn desc);
01176
01178 };
01179
01185 interface Pstring : TypelessProperty {
01186 readonly attribute TimeInterval default_timer_trigger;
01187 readonly attribute TimeInterval min_timer_trigger;
01188 readonly attribute string default_value;
01189
01191 string get_sync (out ACSErr::Completion c);
01192
01194 void get_async (in CBstring cb,
01195 in CBDescIn desc);
01196
01198 long get_history (in long n_last_values,
01199 out stringSeq vs,
01200 out TimeSeq ts);
01201
01203 Monitor create_monitor (in CBstring cb,
01204 in CBDescIn desc);
01205
01207 Monitor create_postponed_monitor (in Time start_time,
01208 in CBstring cb,
01209 in CBDescIn desc);
01210
01212 };
01213
01215 interface PstringSeq : TypelessProperty {
01216 readonly attribute TimeInterval default_timer_trigger;
01217 readonly attribute TimeInterval min_timer_trigger;
01218 readonly attribute stringSeq default_value;
01219
01221 stringSeq get_sync (out ACSErr::Completion c);
01222
01224 void get_async (in CBstringSeq cb,
01225 in CBDescIn desc);
01226
01228 long get_history (in long n_last_values,
01229 out stringSeqSeq vs,
01230 out TimeSeq ts);
01231
01233 MonitorstringSeq create_monitor (in CBstringSeq cb,
01234 in CBDescIn desc);
01235
01237 MonitorstringSeq create_postponed_monitor (in Time start_time,
01238 in CBstringSeq cb,
01239 in CBDescIn desc);
01240
01242 };
01243
01250 interface PdoubleSeq : TypelessProperty {
01251 readonly attribute TimeInterval default_timer_trigger;
01252 readonly attribute TimeInterval min_timer_trigger;
01253 readonly attribute double min_delta_trigger;
01254 readonly attribute double default_value;
01255 readonly attribute double graph_min;
01256 readonly attribute double graph_max;
01257 readonly attribute double min_step;
01258
01260 doubleSeq get_sync (out ACSErr::Completion c);
01261
01263 void get_async (in CBdoubleSeq cb,
01264 in CBDescIn desc);
01265
01267 long get_history (in long n_last_values,
01268 out doubleSeqSeq vs,
01269 out TimeSeq ts);
01270
01272 Monitordouble create_monitor (in CBdoubleSeq cb,
01273 in CBDescIn desc);
01274
01276 Monitordouble create_postponed_monitor (in Time start_time,
01277 in CBdoubleSeq cb,
01278 in CBDescIn desc);
01279
01281 };
01282
01283
01290 interface PfloatSeq : TypelessProperty {
01291 readonly attribute TimeInterval default_timer_trigger;
01292 readonly attribute TimeInterval min_timer_trigger;
01293 readonly attribute float min_delta_trigger;
01294 readonly attribute float default_value;
01295 readonly attribute float graph_min;
01296 readonly attribute float graph_max;
01297 readonly attribute float min_step;
01298
01300 floatSeq get_sync (out ACSErr::Completion c);
01301
01303 void get_async (in CBfloatSeq cb,
01304 in CBDescIn desc);
01305
01307 long get_history (in long n_last_values,
01308 out floatSeqSeq vs,
01309 out TimeSeq ts);
01310
01312 Monitorfloat create_monitor (in CBfloatSeq cb,
01313 in CBDescIn desc);
01314
01316 Monitorfloat create_postponed_monitor (in Time start_time,
01317 in CBfloatSeq cb,
01318 in CBDescIn desc);
01319
01321 };
01322
01324 interface PlongSeq : TypelessProperty {
01325 readonly attribute TimeInterval default_timer_trigger;
01326 readonly attribute TimeInterval min_timer_trigger;
01327 readonly attribute long min_delta_trigger;
01328 readonly attribute long default_value;
01329 readonly attribute long graph_min;
01330 readonly attribute long graph_max;
01331 readonly attribute long min_step;
01332
01334 longSeq get_sync (out ACSErr::Completion c);
01335
01337 void get_async (in CBlongSeq cb,
01338 in CBDescIn desc);
01339
01341 long get_history (in long n_last_values,
01342 out longSeqSeq vs,
01343 out TimeSeq ts);
01344
01346 Monitorlong create_monitor (in CBlongSeq cb,
01347 in CBDescIn desc);
01348
01350 Monitorlong create_postponed_monitor (in Time start_time,
01351 in CBlongSeq cb,
01352 in CBDescIn desc);
01353
01355 };
01356
01364 interface ROdouble : Pdouble {
01365
01367 readonly attribute double alarm_low_on;
01368
01370 readonly attribute double alarm_low_off;
01371
01373 readonly attribute double alarm_high_on;
01374
01376 readonly attribute double alarm_high_off;
01377
01386 Subscription new_subscription_Alarm (in Alarmdouble cb,
01387 in CBDescIn desc);
01388
01390 };
01391
01399 interface RWdouble : Pdouble {
01400
01401 readonly attribute double min_value;
01402 readonly attribute double max_value;
01403
01408 ACSErr::Completion set_sync (in double value);
01409
01416 void set_async (in double value,
01417 in CBvoid cb,
01418 in CBDescIn desc);
01419
01424 void set_nonblocking (in double value);
01425
01427 void increment (in CBvoid cb,
01428 in CBDescIn desc);
01429
01431 void decrement (in CBvoid cb,
01432 in CBDescIn desc);
01433
01435 };
01436
01438 interface ROfloat : Pfloat {
01439
01441 readonly attribute float alarm_low_on;
01442
01444 readonly attribute float alarm_low_off;
01445
01447 readonly attribute float alarm_high_on;
01448
01450 readonly attribute float alarm_high_off;
01451
01460 Subscription new_subscription_Alarm (in Alarmfloat cb,
01461 in CBDescIn desc);
01462
01464 };
01465
01473 interface RWfloat : Pfloat {
01474
01475 readonly attribute float min_value;
01476 readonly attribute float max_value;
01477
01482 ACSErr::Completion set_sync (in float value);
01483
01490 void set_async (in float value,
01491 in CBvoid cb,
01492 in CBDescIn desc);
01493
01498 void set_nonblocking (in float value);
01499
01501 void increment (in CBvoid cb,
01502 in CBDescIn desc);
01503
01505 void decrement (in CBvoid cb,
01506 in CBDescIn desc);
01507
01509 };
01510
01512 interface ROpattern : Ppattern {
01513
01515 readonly attribute pattern alarm_mask;
01516
01518 readonly attribute pattern alarm_trigger;
01519
01521 Subscription new_subscription_Alarm (in Alarmpattern cb,
01522 in CBDescIn desc);
01523
01525 };
01526
01528 interface RWpattern : Ppattern {
01530 ACSErr::Completion set_sync (in pattern value);
01531
01533 void set_async (in pattern value,
01534 in CBvoid cb,
01535 in CBDescIn desc);
01536
01538 void set_nonblocking (in pattern value);
01539
01541 };
01542
01544 interface RWstring : Pstring {
01546 ACSErr::Completion set_sync (in string value);
01547
01549 void set_async (in string value,
01550 in CBvoid cb,
01551 in CBDescIn desc);
01552
01554 void set_nonblocking (in string value);
01555
01557 };
01558
01560 interface ROstring : Pstring {
01561
01563 Subscription new_subscription_Alarm (in Alarmstring cb,
01564 in CBDescIn desc);
01565 };
01566
01568 interface ROstringSeq : PstringSeq {
01570 Subscription new_subscription_Alarm (in AlarmstringSeq cb,
01571 in CBDescIn desc);
01572 };
01573
01575 interface ROdoubleSeq : PdoubleSeq {
01576 readonly attribute double alarm_low_on;
01577 readonly attribute double alarm_low_off;
01578 readonly attribute double alarm_high_on;
01579 readonly attribute double alarm_high_off;
01580
01582 Subscription new_subscription_Alarm (in Alarmdouble cb,
01583 in CBDescIn desc);
01584
01586 };
01587
01589 interface RWdoubleSeq : PdoubleSeq {
01591 readonly attribute double min_value;
01592
01594 readonly attribute double max_value;
01595
01597 ACSErr::Completion set_sync (in doubleSeq value);
01598
01600 void set_async (in doubleSeq value,
01601 in CBvoid cb,
01602 in CBDescIn desc);
01603
01606 void set_nonblocking (in doubleSeq value);
01607
01609 void increment (in CBvoid cb,
01610 in CBDescIn desc);
01611
01613 void decrement (in CBvoid cb,
01614 in CBDescIn desc);
01615
01617 };
01618
01620 interface ROfloatSeq : PfloatSeq {
01621 readonly attribute float alarm_low_on;
01622 readonly attribute float alarm_low_off;
01623 readonly attribute float alarm_high_on;
01624 readonly attribute float alarm_high_off;
01625
01627 Subscription new_subscription_Alarm (in Alarmfloat cb,
01628 in CBDescIn desc);
01629
01631 };
01632
01634 interface RWfloatSeq : PfloatSeq {
01636 readonly attribute float min_value;
01637
01639 readonly attribute float max_value;
01640
01642 ACSErr::Completion set_sync (in floatSeq value);
01643
01645 void set_async (in floatSeq value,
01646 in CBvoid cb,
01647 in CBDescIn desc);
01648
01651 void set_nonblocking (in floatSeq value);
01652
01654 void increment (in CBvoid cb,
01655 in CBDescIn desc);
01656
01658 void decrement (in CBvoid cb,
01659 in CBDescIn desc);
01660
01662 };
01663
01665 interface ROlongSeq : PlongSeq {
01667 readonly attribute long alarm_low_on;
01669 readonly attribute long alarm_low_off;
01671 readonly attribute long alarm_high_on;
01673 readonly attribute long alarm_high_off;
01674
01676 Subscription new_subscription_Alarm (in Alarmlong cb,
01677 in CBDescIn desc);
01678
01680 };
01681
01683 interface RWlongSeq : PlongSeq {
01685 readonly attribute long min_value;
01686
01688 readonly attribute long max_value;
01689
01691 ACSErr::Completion set_sync (in longSeq value);
01692
01694 void set_async (in longSeq value,
01695 in CBvoid cb,
01696 in CBDescIn desc);
01697
01699 void set_nonblocking (in longSeq value);
01700
01702 void increment (in CBvoid cb,
01703 in CBDescIn desc);
01704
01706 void decrement (in CBvoid cb,
01707 in CBDescIn desc);
01708
01710 };
01711
01713 interface ROlong : Plong {
01714 readonly attribute long alarm_low_on;
01715 readonly attribute long alarm_low_off;
01716 readonly attribute long alarm_high_on;
01717 readonly attribute long alarm_high_off;
01718
01721 Subscription new_subscription_Alarm (in Alarmlong cb,
01722 in CBDescIn desc);
01723
01725 };
01726
01728 interface RWlong : Plong {
01730 ACSErr::Completion set_sync (in long value);
01731
01733 void set_async (in long value,
01734 in CBvoid cb,
01735 in CBDescIn desc);
01736
01738 void set_nonblocking (in long value);
01739
01744 void increment (in CBvoid cb,
01745 in CBDescIn desc);
01746
01751 void decrement (in CBvoid cb,
01752 in CBDescIn desc);
01753
01755 readonly attribute long max_value;
01756 readonly attribute long min_value;
01757 };
01758
01759
01760
01761
01762
01763
01764
01765 interface PlongLong : TypelessProperty {
01766 readonly attribute TimeInterval default_timer_trigger;
01767 readonly attribute TimeInterval min_timer_trigger;
01768 readonly attribute longLong min_delta_trigger;
01769 readonly attribute longLong default_value;
01770 readonly attribute longLong graph_min;
01771 readonly attribute longLong graph_max;
01772 readonly attribute longLong min_step;
01773
01775 longLong get_sync (out ACSErr::Completion c);
01776
01778 void get_async (in CBlongLong cb,
01779 in CBDescIn desc);
01780
01782 long get_history (in long n_last_values,
01783 out longLongSeq vs,
01784 out TimeSeq ts);
01785
01787 MonitorlongLong create_monitor (in CBlongLong cb,
01788 in CBDescIn desc);
01789
01791 MonitorlongLong create_postponed_monitor (in Time start_time,
01792 in CBlongLong cb,
01793 in CBDescIn desc);
01794
01796 };
01797
01798 interface AlarmlongLong : Callback {
01800 oneway void alarm_raised (in longLong value,
01801 in ACSErr::Completion c,
01802 in CBDescOut desc);
01803
01805 oneway void alarm_cleared (in longLong value,
01806 in ACSErr::Completion c,
01807 in CBDescOut desc);
01808 };
01809
01810 interface ROlongLong : PlongLong {
01811 readonly attribute longLong alarm_low_on;
01812 readonly attribute longLong alarm_low_off;
01813 readonly attribute longLong alarm_high_on;
01814 readonly attribute longLong alarm_high_off;
01815
01817 Subscription new_subscription_Alarm (in AlarmlongLong cb,
01818 in CBDescIn desc);
01819
01822 };
01823
01824 interface RWlongLong : PlongLong {
01826 ACSErr::Completion set_sync (in longLong value);
01827
01829 void set_async (in longLong value,
01830 in CBvoid cb,
01831 in CBDescIn desc);
01832
01834 void set_nonblocking (in longLong value);
01835
01840 void increment (in CBvoid cb,
01841 in CBDescIn desc);
01842
01845 void decrement (in CBvoid cb,
01846 in CBDescIn desc);
01847
01849 readonly attribute longLong max_value;
01850 readonly attribute longLong min_value;
01851 };
01852
01853
01854
01855
01856
01857 interface PuLongLong : TypelessProperty {
01858 readonly attribute TimeInterval default_timer_trigger;
01859 readonly attribute TimeInterval min_timer_trigger;
01860 readonly attribute uLongLong min_delta_trigger;
01861 readonly attribute uLongLong default_value;
01862 readonly attribute uLongLong graph_min;
01863 readonly attribute uLongLong graph_max;
01864 readonly attribute uLongLong min_step;
01865
01867 uLongLong get_sync (out ACSErr::Completion c);
01868
01870 void get_async (in CBuLongLong cb,
01871 in CBDescIn desc);
01872
01874 long get_history (in long n_last_values,
01875 out uLongLongSeq vs,
01876 out TimeSeq ts);
01877
01879 MonitoruLongLong create_monitor (in CBuLongLong cb,
01880 in CBDescIn desc);
01881
01883 MonitoruLongLong create_postponed_monitor (in Time start_time,
01884 in CBuLongLong cb,
01885 in CBDescIn desc);
01886
01888 };
01889
01890 interface AlarmuLongLong : Callback {
01891
01893 oneway void alarm_raised (in uLongLong value,
01894 in ACSErr::Completion c,
01895 in CBDescOut desc);
01896
01898 oneway void alarm_cleared (in uLongLong value,
01899 in ACSErr::Completion c,
01900 in CBDescOut desc);
01901
01902 };
01903
01904 interface ROuLongLong : PuLongLong {
01905 readonly attribute uLongLong alarm_low_on;
01906 readonly attribute uLongLong alarm_low_off;
01907 readonly attribute uLongLong alarm_high_on;
01908 readonly attribute uLongLong alarm_high_off;
01909
01911 Subscription new_subscription_Alarm (in AlarmuLongLong cb,
01912 in CBDescIn desc);
01913
01916 };
01917
01918 interface RWuLongLong : PuLongLong {
01919
01921 ACSErr::Completion set_sync (in uLongLong value);
01922
01924 void set_async (in uLongLong value,
01925 in CBvoid cb,
01926 in CBDescIn desc);
01927
01929 void set_nonblocking (in uLongLong value);
01930
01935 void increment (in CBvoid cb,
01936 in CBDescIn desc);
01937
01942 void decrement (in CBvoid cb,
01943 in CBDescIn desc);
01944
01946 readonly attribute uLongLong max_value;
01947 readonly attribute uLongLong min_value;
01948 };
01949 };
01950
01951 #endif