Esempio n. 1
0
        private static string GetDisplayText(VisaStatus visaStatus)
        {
            switch (visaStatus)
            {
            case VisaStatus.RestrictedWorkVisa:
                return("I am currently in possession of a restricted Australian work visa");

            default:
                Assert.Fail();
                return(null);
            }
        }
Esempio n. 2
0
        private void ThrowVisaException(int statusCode)
        {
            string methodName = new StackTrace().GetFrame(1).GetMethod().Name;
            string message    = "A VISA error occurred in " + methodName + " (Error " + statusCode + ")";

            VisaStatus vs = (VisaStatus)Enum.Parse(typeof(VisaStatus), statusCode.ToString(), true);

            switch (vs)
            {
            case VisaStatus.ErrorConnectionLost:
                message = "The IO connection to the instrument has been lost";
                break;

            case VisaStatus.ErrorIO:
                message = "An IO error occurred";
                break;

            case VisaStatus.ErrorTimeout:
                message = "The IO operation timed out";
                break;

            case VisaStatus.ErrorResourceLocked:
                message = "The instrument session is locked";
                break;

            case VisaStatus.ErrorResourceBusy:
                message = "The instrument session is busy";
                break;

            case VisaStatus.ErrorInvalidObject:
                message = "There is no connection to the instrument";
                // convert the VI_ERROR_INV_OBJECT to ErrorConnectionLost
                vs = VisaStatus.ErrorConnectionLost;
                break;

            default:
                message = "A VISA error occurred";
                break;
            }

            message += " (Error " + statusCode + ")";

            throw new VisaException(vs, message);
        }
Esempio n. 3
0
        public static string GetDisplayText(this VisaStatus visaStatus)
        {
            string text;

            return(Texts.TryGetValue(visaStatus, out text) ? text : Enum.GetName(typeof(VisaStatus), visaStatus));
        }
Esempio n. 4
0
 public VisaException(VisaStatus ErrorCode)
 {
     this.ErrorCode = ErrorCode;
 }
Esempio n. 5
0
 public VisaException(VisaStatus ErrorCode, string Message, Exception InnerException)
     : base(Message, InnerException)
 {
     this.ErrorCode = ErrorCode;
 }
Esempio n. 6
0
        public int VisaErrorNumber; // = 0

        public VisaException(VisaStatus ErrorCode, string Message)
            : base(Message)
        {
            this.ErrorCode = ErrorCode;
        }
Esempio n. 7
0
        private void Initiera()
        {
            var tileset = new BildWrapper("Images/tiles.png");

            var inställningar = new SpelfönsterInställningar
            {
                Fullskärm   = true,
                DoldaKanter = true,
                VSync       = true,
                Bredd       = 16 * 32,
                Höjd        = 16 * 32
            };
            var tangentmappning = new Dictionary <Key, Tangent> {
                { Key.Right, Tangent.Höger },
                { Key.Left, Tangent.Vänster },
                { Key.Up, Tangent.Upp },
                { Key.Down, Tangent.Ner },
                { Key.Escape, Tangent.Escape }
            };

            _fönster = new Spelfönster(tangentmappning, inställningar);
            var spelvärld             = new Spelvärld();
            var grafikkommandon       = new GLWrapper();
            var brickstorlek          = new Rektangel(16, 16);
            var kamera                = new Kamera(new Skärmyta(100, 100));
            var positionskonverterare = new Positionskonverterare(new Skärmyta(16, 16));

            var radioaktivInsektBricka = new Bricka(grafikkommandon, new Skärmposition(5 * 16, 0), new Skärmyta(16, 16));
            var tomBricka           = new Bricka(grafikkommandon, new Skärmposition(15 * 16, 15 * 16), new Skärmyta(16, 16));
            var takBricka           = new Bricka(grafikkommandon, new Skärmposition(2 * 16, 1 * 16), new Skärmyta(16, 16));
            var kabel1Bricka        = new Bricka(grafikkommandon, new Skärmposition(3 * 16, 1 * 16), new Skärmyta(16, 16));
            var kabel2Bricka        = new Bricka(grafikkommandon, new Skärmposition(4 * 16, 1 * 16), new Skärmyta(16, 16));
            var takMedRevaBricka    = new Bricka(grafikkommandon, new Skärmposition(1 * 16, 1 * 16), new Skärmyta(16, 16));
            var ammoBricka          = new Bricka(grafikkommandon, new Skärmposition(0 * 16, 1 * 16), new Skärmyta(16, 16));
            var huvudkaraktärBricka = new Bricka(grafikkommandon, new Skärmposition(0 * 16, 0 * 16), new Skärmyta(16, 16));
            var medicinBricka       = new Bricka(grafikkommandon, new Skärmposition(3 * 16, 2 * 16), new Skärmyta(16, 16));
            var paradisBricka       = new Bricka(grafikkommandon, new Skärmposition(3 * 16, 3 * 16), new Skärmyta(16, 16));
            var hälsomätarram       = new Bricka(grafikkommandon, new Skärmposition(80, 32), new Skärmyta(80, 16));
            var hälsomätargrönt     = new Bricka(grafikkommandon, new Skärmposition(80, 48), new Skärmyta(80, 16));

            spelvärld.Huvudkaraktär = new Huvudkaraktär(4)
            {
                Position = new Spelvärldsposition(1, 1),
                Grafik   = huvudkaraktärBricka
            };

            var skärm = new Skärm();

            var ucVisaSpelvärld = new VisaSpelvärld(spelvärld, positionskonverterare);
            var ucVisaStatus    = new VisaStatus(hälsomätarram, hälsomätargrönt, spelvärld.Huvudkaraktär, skärm);

            var karta       = SkapaKarta();
            var hinderlista = new[] { 0 };
            var hinderkarta = karta.SkapaHinderkarta(hinderlista);

            var ucFlyttaVarelser      = new FlyttaVarelser(spelvärld, hinderkarta);
            var ucUtdelaSkada         = new UtdelaSkada(spelvärld);
            var ucDödaKritisktSkadade = new DödaKritisktSkadade(spelvärld);
            var ucUppdateraSpelvärld  = new UppdateraSpelvärld(ucFlyttaVarelser, ucUtdelaSkada, ucDödaKritisktSkadade);
            var openTKHanterare       = new GrafikHändelser(grafikkommandon, tileset, _fönster, ucVisaSpelvärld, kamera, ucVisaStatus, skärm);
            var kontrollhändelser     = new KontrollHändelser(ucUppdateraSpelvärld, _fönster);

            _fönster.Laddare(openTKHanterare);
            _fönster.StorleksÄndrare(openTKHanterare);
            _fönster.Uppdaterare(openTKHanterare);
            _fönster.Visare(openTKHanterare);
            _fönster.Tangentbordsmottagare(kontrollhändelser);

            var omgivningensBrickor = new Bricka[] {
                tomBricka,
                takBricka,
                kabel1Bricka,
                kabel2Bricka,
                takMedRevaBricka,
                paradisBricka
            };

            spelvärld.MiljöGrafik = new Brickfält(omgivningensBrickor, karta.Indexar, karta.Bredd, new Skärmyta(16, 16));

            var slumpgenerator = new Random();
            var väderstrecken  = new List <Spelvärldsposition>
            {
                new Spelvärldsposition(1, 0),
                new Spelvärldsposition(0, 1),
                new Spelvärldsposition(-1, 0),
                new Spelvärldsposition(0, -1)
            };

            var irraRunt = new SekvensFörflyttning(väderstrecken, new SekvensFörflyttning.SlumpmässigIndexgenerator(slumpgenerator));

            spelvärld.Fienden = new List <Fiende>
            {
                new Fiende {
                    Position           = new Spelvärldsposition(5, 5),
                    Grafik             = radioaktivInsektBricka,
                    Riktningsgenerator = irraRunt
                },
                new Fiende {
                    Position           = new Spelvärldsposition(13, 5),
                    Grafik             = radioaktivInsektBricka,
                    Riktningsgenerator = irraRunt
                }
            };
        }
Esempio n. 8
0
 public static string Encode(this VisaStatus status)
 {
     return(Encode((VisaStatus?)status));
 }