middleware/Communication/Server.cs
author bastiena
Thu, 19 Apr 2012 11:53:06 +0200
changeset 29 fcf435874395
parent 28 9ccef81f02ab
child 41 d2f735d7763f
permissions -rw-r--r--
Middleware : Connection between middleware and front idill established with websockets.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
28
9ccef81f02ab Charset set to UTF-8 without bom
bastiena
parents: 27
diff changeset
     1
/*
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
     2
* This file is part of the TraKERS\Middleware package.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
     3
*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
     4
* (c) IRI <http://www.iri.centrepompidou.fr/>
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
     5
*
27
6c08d4d7219e Middleware :
bastiena
parents: 16
diff changeset
     6
* For the full copyright and license information, please view the LICENSE
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
     7
* file that was distributed with this source code.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
     8
*/
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
     9
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    10
/*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    11
 * Projet : TraKERS
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    12
 * Module : MIDDLEWARE
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    13
 * Sous-Module : Communication
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    14
 * Classe : Server
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    15
 * 
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    16
 * Auteur : alexandre.bastien@iri.centrepompidou.fr
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    17
 * 
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    18
 * Fonctionnalités : Reçoit des notifications du module sous-module Tracking.
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    19
 * Centralise les deux serveurs TUIO et WS et permettent aux autres modules de faire appel
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    20
 * à eux via cette classe.
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    21
 */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    22
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    23
using System;
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    24
using System.Collections.Generic;
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    25
using System.Linq;
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    26
using System.Text;
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    27
using System.Windows.Media.Media3D;
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    28
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    29
namespace Trakers.Communication
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    30
{
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    31
    public class Server
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    32
    {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    33
        private TUIOServer TUIOserver;
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    34
        private WSServer WSserver;
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    35
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    36
        public Server(String host, int port, int _timerElapsing)
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    37
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    38
            TUIOserver = new TUIOServer(host, 8080, _timerElapsing);
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    39
            WSserver = new WSServer(host, 8090, _timerElapsing);
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    40
        }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    41
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    42
        /*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    43
        * Méthode appelée lors d'une notification de type : main gauche entrée dans le champ.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    44
        */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    45
        public void LeftHandTracked(Point3D pt)
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    46
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    47
            TUIOserver.LeftHandTracked(pt);
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    48
            WSserver.LeftHandTracked(pt);
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    49
        }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    50
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    51
        /*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    52
        * Méthode appelée lors d'une notification de type : main droite entrée dans le champ.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    53
        */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    54
        public void RightHandTracked(Point3D pt)
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    55
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    56
            TUIOserver.RightHandTracked(pt);
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    57
            WSserver.RightHandTracked(pt);
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    58
        }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    59
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    60
        /*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    61
        * Méthode appelée lors d'une notification de type : main gauche sortie du champ.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    62
        */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    63
        public void LeftHandQuit()
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    64
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    65
            TUIOserver.LeftHandQuit();
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    66
            WSserver.LeftHandQuit();
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    67
        }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    68
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    69
        /*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    70
        * Méthode appelée lors d'une notification de type : main droite sortie du champ.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    71
        */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    72
        public void RightHandQuit()
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    73
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    74
            TUIOserver.RightHandQuit();
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    75
            WSserver.RightHandQuit();
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    76
        }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    77
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    78
        /*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    79
        * Méthode appelée lorsqu'une gesture a été détectée et que l'événement approprié a été lancé.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    80
        */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    81
        public void GesturePerformed(String code)
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    82
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    83
            TUIOserver.GesturePerformed(code);
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    84
            WSserver.GesturePerformed(code);
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    85
        }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    86
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    87
        /*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    88
        * Méthode appelée lorsqu'on doit entrer dans un autre mode.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    89
        */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    90
        public void ModeNotification(String code)
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    91
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    92
            TUIOserver.ModeNotification(code);
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    93
            WSserver.ModeNotification(code);
16
a9ebacd6c089 Middleware :
bastiena
parents: 15
diff changeset
    94
        }
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    95
    }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    96
}