UsesConcatParmsSkel.C


#include "UsesConcatParmsSkel.h"
#include < hpcxx.h >
#include "../PORTS_REGISTRATION_ID.h"
#include "../../ccacore/RegisterType.h"

bool UsesConcatParmsSkel::registerFlag = false;

int UsesConcatParmsSkel :: sendConcatParms(ConcatParms *concatParms) {
  for(vector::iterator iter = providerList.begin();
      iter != providerList.end();  
      iter++) {
    Port *pidl = *iter;
    int dummy;
    if ((*pidl).skp) {
      hpcxx_minvoke((HPCxx_GlobalPtr *)(*pidl).skp, dummy, SEND_CONCAT_PARMS_ID, *event);
    } else {
      cout << "UsesConcatParmsSkel::sendConcatParms::Unbound ProvidesPort Proxy !! \n";
    }
  }
  return 0;
}

int UsesConcatParmsSkel :: start() {
  for(vector::iterator iter = providerList.begin();
      iter != providerList.end();  
      iter++) {
    Port *pidl = *iter;
    int dummy;
    if ((*pidl).skp) {
      hpcxx_minvoke((HPCxx_GlobalPtr *)(*pidl).skp, dummy, CONCAT_PARMS_START_ID, *event);
    } else {
      cout << "UsesConcatParmsSkel::startConcatParms::Unbound ProvidesPort Proxy !! \n";
    }
  }
  return 0;
}

int UsesConcatParmsSkel :: stop() {
  for(vector::iterator iter = providerList.begin();
      iter != providerList.end();  
      iter++) {
    Port *pidl = *iter;
    int dummy;
    if ((*pidl).skp) {
      hpcxx_minvoke((HPCxx_GlobalPtr *)(*pidl).skp, dummy, CONCAT_PARMS_STOP_ID, *event);
    } else {
      cout << "UsesConcatParmsSkel::stopConcatParms::Unbound ProvidesPort Proxy !! \n";
    }
  }
  return 0;
}

int UsesConcatParmsSkel :: kill() {
  for(vector::iterator iter = providerList.begin();
      iter != providerList.end();  
      iter++) {
    Port *pidl = *iter;
    int dummy;
    if ((*pidl).skp) {
      hpcxx_minvoke((HPCxx_GlobalPtr *)(*pidl).skp, dummy, CONCAT_PARMS_KILL_ID, *event);
    } else {
      cout << "UsesConcatParmsSkel::killConcatParms::Unbound ProvidesPort Proxy !! \n";
    }
  }
  return 0;
}


void UsesConcatParmsSkel::registerSelf () {
  if (!registerFlag) {
    registerFlag = true;
    registerUsesPortType("ConcatParms_idl", *(new UsesConcatParmsSkel()));
  }
}

// these methods will never be called
// as we never move skels around
void hpcxx_pack(HPCxx_Buffer& b, UsesConcatParmsSkel* p, int count) {}
void hpcxx_unpack(HPCxx_Buffer& b, UsesConcatParmsSkel* p, int count){}


Back to CCA Compliant HPC++ based CCAT Components
mgovinda@cs.indiana.edu
Last modified: Tue Jan 25 14:30:41 EST 2000