DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦ed0fbf2de⟧ Ada Source

    Length: 5120 (0x1400)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Prediction4_Inc_Down_Not_Ok_Rule, seg_04c924, separate Qualit_Generic_Agent.Qualit_Epsilon_Rule_Bundle

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« 
        └─⟦this⟧ 

E3 Source Code



separate (Qualit_Generic_Agent.Qualit_Epsilon_Rule_Bundle)

package body Prediction4_Inc_Down_Not_Ok_Rule is


    function Premiss return Fact_Queries is
        use Qualit_Frames;
        use Slot;
    begin
        return
           (Updates.Exist ((Valid => Is_Equal (False_Boolean))),
            Predictions.Exist
               ((Quadrant_Number => Is_Equal (4),
                 Prediction_Name =>
                    Is_Equal
                       (Epsilon_Should_Decrease_Or_Be_Constant_Prediction_Name))),
            Epsilon_Variations.Exist ((Value => Is_Greater (Null_Value))),
            Down_Values.Exist ((Value => Is_Any)),
            Down_Increments.Exist ((Value => Is_Any)));
    end Premiss;


    procedure Action (Objects : Fact_Collection) is  
        use Qualit_Frames;
        use Slot;
        use Slot.Operators;
        The_Update_Fact         : Fact_Name renames Objects (1);
        The_Prediction_Fact     : Fact_Name renames Objects (2);
        The_Down_Value_Fact     : Fact_Name renames Objects (4);
        The_Down_Increment_Fact : Fact_Name renames Objects (5);
        The_Down_Value          : Slot.Object :=
           Down_Values.Get (The_Down_Value_Fact, Value);
        The_Down_Increment      : Slot.Object :=
           Down_Increments.Get (The_Down_Increment_Fact, Value);
    begin
        Display.New_Line (The_Output_Window);
        Display.Put_Line
           ("********************************************************",
            The_Output_Window);
        Display.Put_Line
           ("QUADRANT 4 prediction => epsilon should decrease or be constant",
            The_Output_Window);
        Display.Put_Line ("                  and prediction NOT OK",
                          The_Output_Window);
        Display.Put_Line
           ("********************************************************",
            The_Output_Window);

        Updates.Change (The_Update_Fact, Valid, True_Boolean);

        The_Down_Value := The_Down_Value + The_Down_Increment;
        if The_Down_Value > Max_Down_Value then
            The_Down_Value := Max_Down_Value;
        end if;
        Down_Values.Change (The_Down_Value_Fact, Value, The_Down_Value);

        Predictions.Delete (The_Prediction_Fact);
    end Action;


end Prediction4_Inc_Down_Not_Ok_Rule;

E3 Meta Data

    nblk1=4
    nid=0
    hdr6=8
        [0x00] rec0=1d rec1=00 rec2=01 rec3=062
        [0x01] rec0=00 rec1=00 rec2=04 rec3=018
        [0x02] rec0=15 rec1=00 rec2=03 rec3=06e
        [0x03] rec0=0d rec1=00 rec2=02 rec3=000
    tail 0x2175371ec870d462c45b4 0x42a00088462063c03