root/ossiedev/branches/hvolos/components/Demodulator/src/main.cpp @ 8415

Revision 8415, 2.1 KB (checked in by hvolos, 5 years ago)

Modified the mod/demod to work with the current framework

  • Property svn:eol-style set to native
Line 
1/****************************************************************************
2
3Copyright 2007 Virginia Polytechnic Institute and State University
4
5This file is part of the OSSIE Demodulator.
6
7OSSIE Demodulator is free software; you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by
9the Free Software Foundation; either version 2 of the License, or
10(at your option) any later version.
11
12OSSIE Demodulator is distributed in the hope that it will be useful,
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
18along with OSSIE Demodulator; if not, write to the Free Software
19Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
20
21****************************************************************************/
22
23#include <iostream>
24
25#include "ossie/ossieSupport.h"
26#include "ossie/debug.h"
27
28#include "Demodulator.h"
29
30
31int main(int argc, char* argv[])
32
33{
34    ossieDebugLevel = 3;
35
36    ossieSupport::ORB *orb = new ossieSupport::ORB;
37    omni_mutex component_running_mutex;
38    omni_condition *component_running = new omni_condition(&component_running_mutex);
39
40    if (argc != 3) {
41        std::cout << argv[0] << " <id> <usage name> " << std::endl;
42        exit (-1);
43    }
44
45    char *uuid = argv[1];
46    char *label = argv[2];
47
48    std::cout << "Identifier - " << uuid << "  Label - " << label << std::endl;
49
50    Demodulator_i* demodulator_servant;
51    CF::Resource_var demodulator_var;
52
53    // Create the demodulator component servant and object reference
54
55    demodulator_servant = new Demodulator_i(uuid, component_running);
56    demodulator_var = demodulator_servant->_this();
57
58    orb->bind_object_to_name((CORBA::Object_ptr) demodulator_var, label);
59
60    // This bit is ORB specific
61    // omniorb is threaded and the servants are running at this point
62    // so we block on the condition
63    // The releaseObject method clear the condition and the component exits
64
65    component_running->wait();
66    orb->unbind_name(label);
67    orb->orb->shutdown(0);
68
69}
Note: See TracBrowser for help on using the browser.