program.cpp 2.88 KB
Newer Older
1 2 3 4
/*****************************************************************************
 * program.cpp : SAP Program class
 ****************************************************************************
 * Copyright (C) 1998-2002 VideoLAN
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
5
 * $Id$
6 7
 *
 * Authors: Damien Lucas <nitrox@videolan.org>
8
 *          Philippe Van Hecke <philippe.vanhecke@belnet.be>
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
 *****************************************************************************/

#include <sys/types.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdlib.h>
#include <stdio.h>
#include <string>
#include <vector>
using namespace std;

#include "program.h"

36
Program::Program() : b_rtp(false), b_has_pl_group(false)
37
{
38
    /* Set default Values */
39 40
    address="";
    port="";
41
    permanent = true;
42
    program_ttl = "255";
43 44 45
    machine = "localhost";
    user = "VideoLAN";
    site = "http://www.videolan.org";
46
}
47 48 49 50 51 52 53
Program::~Program() {return;}

string Program::GetName(void) {return name;}
string Program::GetUser(void) {return user;}
string Program::GetMachine(void) {return machine;}
string Program::GetSite(void) {return site;}
string Program::GetAddress(void){return address;}
54
string Program::GetPort(void){return port;}
55
string Program::GetTTL(void){return program_ttl;}
56
string Program::GetPlGroup(void){return pl_group;}
57

58
bool   Program::IsPermanent(void){return permanent;}
59
bool   Program::IsRTP(void){return b_rtp;}
60
bool   Program::HasPlGroup(void){return b_has_pl_group;}
61

62 63 64 65 66 67
void Program::SetName(const char* n){name=n;}
void Program::SetUser(const char* u){user=u;}
void Program::SetMachine(const char* m){machine=m;}
void Program::SetSite(const char* s){site=s;}
void Program::SetAddress(const char* a){address=a;}
void Program::SetPlGroup(const char *h){pl_group=h;}
68
void Program::SetRTP(bool b){b_rtp = b;}
69
void Program::SetHasPlGroup(bool b){b_has_pl_group = b ;}
70
void Program::SetPort(const char* p)
71
{
72
    char psz_port[6];
73 74
    snprintf(psz_port, sizeof (psz_port), "%d", atoi(p));
    port = psz_port;
75 76

}
77

78
void Program::SetTTL(const char *p){program_ttl=p;}
79

80
Program::Program(string n, string u, string m, string s, string a,string p)
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
81
    : b_has_pl_group (false)
82 83 84 85 86 87
{
    name=n;
    user=u;
    machine=m;
    site=s;
    address=a;
88
    port=p;
89
    permanent=true;
90
}