middleware/Communication/Server.cs
author bastiena
Fri, 29 Jun 2012 15:37:26 +0200
changeset 41 d2f735d7763f
parent 29 fcf435874395
permissions -rw-r--r--
Middleware: config by config file Front JS: Examples created (pointers & gestures). Installer that integers now Middleware + Front Processing + Front JS.
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
41
d2f735d7763f Middleware:
bastiena
parents: 29
diff changeset
    36
        /*
d2f735d7763f Middleware:
bastiena
parents: 29
diff changeset
    37
         * Constructeur. Il prend les paramètres des deux serveurs.
d2f735d7763f Middleware:
bastiena
parents: 29
diff changeset
    38
         */
d2f735d7763f Middleware:
bastiena
parents: 29
diff changeset
    39
        public Server(String tuioHost, int tuioPort, int _tuioTimerElapsing, String wsHost, int wsPort, int _wsTimerElapsing)
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    40
        {
41
d2f735d7763f Middleware:
bastiena
parents: 29
diff changeset
    41
            TUIOserver = new TUIOServer(wsHost, tuioPort, _tuioTimerElapsing);
d2f735d7763f Middleware:
bastiena
parents: 29
diff changeset
    42
            WSserver = new WSServer(wsHost, wsPort, _wsTimerElapsing);
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    43
        }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    44
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    45
        /*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    46
        * Méthode appelée lors d'une notification de type : main gauche entrée dans le champ.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    47
        */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    48
        public void LeftHandTracked(Point3D pt)
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    49
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    50
            TUIOserver.LeftHandTracked(pt);
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    51
            WSserver.LeftHandTracked(pt);
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    52
        }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    53
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    54
        /*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    55
        * Méthode appelée lors d'une notification de type : main droite entrée dans le champ.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    56
        */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    57
        public void RightHandTracked(Point3D pt)
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    58
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    59
            TUIOserver.RightHandTracked(pt);
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    60
            WSserver.RightHandTracked(pt);
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    61
        }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    62
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    63
        /*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    64
        * Méthode appelée lors d'une notification de type : main gauche sortie du champ.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    65
        */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    66
        public void LeftHandQuit()
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    67
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    68
            TUIOserver.LeftHandQuit();
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    69
            WSserver.LeftHandQuit();
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    70
        }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    71
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    72
        /*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    73
        * Méthode appelée lors d'une notification de type : main droite sortie du champ.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    74
        */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    75
        public void RightHandQuit()
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    76
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    77
            TUIOserver.RightHandQuit();
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    78
            WSserver.RightHandQuit();
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    79
        }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    80
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    81
        /*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    82
        * 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
    83
        */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    84
        public void GesturePerformed(String code)
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    85
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    86
            TUIOserver.GesturePerformed(code);
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    87
            WSserver.GesturePerformed(code);
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    88
        }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    89
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    90
        /*
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    91
        * Méthode appelée lorsqu'on doit entrer dans un autre mode.
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    92
        */
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    93
        public void ModeNotification(String code)
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    94
        {
29
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    95
            TUIOserver.ModeNotification(code);
fcf435874395 Middleware :
bastiena
parents: 28
diff changeset
    96
            WSserver.ModeNotification(code);
16
a9ebacd6c089 Middleware :
bastiena
parents: 15
diff changeset
    97
        }
15
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    98
    }
4b78f179e7ce Middleware :
bastiena
parents:
diff changeset
    99
}