root/ossiedev/branches/hvolos/components/Modulator/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

RevLine 
[2128]1/****************************************************************************
2
3Copyright 2006 Virginia Polytechnic Institute and State University
4
5This file is part of the OSSIE Modulator.
6
7OSSIE Modulator 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 Modulator 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 Modulator; 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>
[2576]24
[2128]25#include "ossie/ossieSupport.h"
[2576]26#include "ossie/debug.h"
[2128]27
28#include "Modulator.h"
29
30
31int main(int argc, char* argv[])
32
33{
[4404]34    ossieDebugLevel = 3;
35
[2128]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
[8415]40    if (argc != 3) {
41        std::cout << argv[0] << " <id> <usage name> " << std::endl;
42        exit (-1);
43    }
[2576]44
[8415]45    char *uuid = argv[1];
46    char *label = argv[2];
47
48    std::cout << "Identifier - " << uuid << "  Label - " << label << std::endl;
49
[2128]50    Modulator_i* modulator_servant;
51    CF::Resource_var modulator_var;
52
[4411]53    // Create the modulator component servant and object reference
[2128]54
[8415]55    modulator_servant = new Modulator_i(uuid, component_running);
[2128]56    modulator_var = modulator_servant->_this();
57
58
[8415]59    orb->bind_object_to_name((CORBA::Object_ptr) modulator_var, label);
[4404]60
[2128]61    // This bit is ORB specific
62    // omniorb is threaded and the servants are running at this point
63    // so we block on the condition
64    // The releaseObject method clear the condition and the component exits
65
66    component_running->wait();
[8415]67    orb->unbind_name(label);
[2128]68    orb->orb->shutdown(0);
69
70}
Note: See TracBrowser for help on using the browser.