⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gav_aux.cc

📁 分布式仿真 开放源码
💻 CC
📖 第 1 页 / 共 2 页
字号:
        return RTI_FALSE ;    else        return RTI_TRUE ;}// ----------------------------------------------------------------------------// AttributeHandleSetImpFactory// ----------------------------------------------------------------------------AttributeHandleSet*AttributeHandleSetFactory::create(ULong)    throw (MemoryExhausted, ValueCountExceeded){    return ((AttributeHandleSet *)new AttributeHandleSetImp());}// ----------------------------------------------------------------------------// FederateHandleSetImp// ----------------------------------------------------------------------------FederateHandleSetImp::~FederateHandleSetImp(){    empty();}// ----------------------------------------------------------------------------inline ULongFederateHandleSetImp::size() const{    return list<FederateHandle>::size();}// ----------------------------------------------------------------------------FederateHandleFederateHandleSetImp::getHandle(ULong i) const    throw (ArrayIndexOutOfBounds){    list<FederateHandle>::const_iterator h ;    ULong j ;    for (j = 0, h = begin(); h != end(); h++, j++) {        if (i == j)            return (*h);    }    throw ArrayIndexOutOfBounds();}// ----------------------------------------------------------------------------voidFederateHandleSetImp::add(FederateHandle h)    throw (ValueCountExceeded){    push_front(h);}// ----------------------------------------------------------------------------voidFederateHandleSetImp::remove(FederateHandle h)    throw (AttributeNotDefined, ArrayIndexOutOfBounds){    if (isMember(h) == RTI_TRUE)        list<FederateHandle>::remove(h);    else        throw AttributeNotDefined();}// ----------------------------------------------------------------------------voidFederateHandleSetImp::empty(){    list<FederateHandle>::clear();}// ----------------------------------------------------------------------------BooleanFederateHandleSetImp::isMember(FederateHandle h) const{    list<FederateHandle>::const_iterator result = find(begin(), end(), h);    if (result == end())        return RTI_FALSE ;    else        return RTI_TRUE ;}// ----------------------------------------------------------------------------// FederateHandleSetFactory// ----------------------------------------------------------------------------FederateHandleSet*FederateHandleSetFactory::create(ULong)    throw (MemoryExhausted, ValueCountExceeded){    return ((FederateHandleSet *) new FederateHandleSetImp());}// ----------------------------------------------------------------------------// ParameterHandleValuePair// ----------------------------------------------------------------------------ParameterHandleValuePair::ParameterHandleValuePair(Handle handle,                                                   const char *value,                                                   ULong value_length){    _handle = handle ;    _valueLength = value_length ;    _value = (char *)malloc(value_length);    memcpy(_value, value, value_length);}// ----------------------------------------------------------------------------ParameterHandleValuePair::~ParameterHandleValuePair(){    delete _value ;}// ----------------------------------------------------------------------------// ParameterHandleValuePairSetImp// ----------------------------------------------------------------------------ParameterHandleValuePairSetImp::ParameterHandleValuePairSetImp(ULong){    _order = RECEIVE ;    _transport = RELIABLE ;}ParameterHandleValuePairSetImp::~ParameterHandleValuePairSetImp(){    empty();}// ----------------------------------------------------------------------------inline ULongParameterHandleValuePairSetImp::size() const{    return list<ParameterHandleValuePair *>::size();}// ----------------------------------------------------------------------------HandleParameterHandleValuePairSetImp::getHandle(ULong i) const    throw (ArrayIndexOutOfBounds){    list<ParameterHandleValuePair *>::const_iterator j = begin();    for (ULong k = 0 ; j != end(); j++, k++) {        if (i == k)            return (*j)->_handle ;    }    throw ArrayIndexOutOfBounds();}// ----------------------------------------------------------------------------ULongParameterHandleValuePairSetImp::getValueLength(ULong i) const    throw (ArrayIndexOutOfBounds){    list<ParameterHandleValuePair *>::const_iterator j = begin();    for (ULong k = 0 ; j != end(); j++, k++) {        if (i == k)            return (*j)->_valueLength ;    }    throw ArrayIndexOutOfBounds();}// ----------------------------------------------------------------------------voidParameterHandleValuePairSetImp::getValue(ULong i,                                         char *buff,                                         ULong& value_length) const    throw (ArrayIndexOutOfBounds){    list<ParameterHandleValuePair *>::const_iterator j = begin();    for (ULong k = 0 ; j != end(); j++, k++) {        if (i == k) {            value_length = (*j)->_valueLength ;            memcpy(buff, (*j)->_value, (*j)->_valueLength);            return ;        }    }    throw ArrayIndexOutOfBounds();}// ----------------------------------------------------------------------------char *ParameterHandleValuePairSetImp::getValuePointer(ULong i,                                                ULong& value_length) const    throw (ArrayIndexOutOfBounds){    list<ParameterHandleValuePair *>::const_iterator j = begin();    for (ULong k = 0 ; j != end(); j++, k++) {        if (i == k) {            value_length = (*j)->_valueLength ;            return (*j)->_value ;        }    }    throw ArrayIndexOutOfBounds();}// ----------------------------------------------------------------------------inline TransportTypeParameterHandleValuePairSetImp::getTransportType() const    throw (InvalidHandleValuePairSetContext){    return _transport ;}// ----------------------------------------------------------------------------inline OrderTypeParameterHandleValuePairSetImp::getOrderType() const    throw (InvalidHandleValuePairSetContext){    return _order ;}// ----------------------------------------------------------------------------Region *ParameterHandleValuePairSetImp::getRegion() const    throw (InvalidHandleValuePairSetContext,           UnimplementedService)//CERTI{    throw UnimplementedService();}// ----------------------------------------------------------------------------voidParameterHandleValuePairSetImp::add(Handle h,                                    const char *buff,                                    ULong value_length)    throw (ValueLengthExceeded, ValueCountExceeded){    ParameterHandleValuePair *phvp ;    phvp = new ParameterHandleValuePair(h, buff, value_length);    push_front(phvp);}// ----------------------------------------------------------------------------voidParameterHandleValuePairSetImp::remove(Handle h)    throw (ArrayIndexOutOfBounds){    list<ParameterHandleValuePair *>::iterator j ;    for (j = begin(); j != end(); j++) {        if ((*j)->_handle == h) {            delete (*j);            erase(j);            return ;        }    }    throw ArrayIndexOutOfBounds();}// ----------------------------------------------------------------------------voidParameterHandleValuePairSetImp::moveFrom(const ParameterHandleValuePairSet&,                                         ULong&)    throw (ValueCountExceeded, ArrayIndexOutOfBounds,           UnimplementedService)//CERTI{    throw UnimplementedService();}// ----------------------------------------------------------------------------voidParameterHandleValuePairSetImp::empty(){    while (!list<ParameterHandleValuePair *>::empty()) {        delete front();        pop_front();    }}// ----------------------------------------------------------------------------ULongParameterHandleValuePairSetImp::start() const{    //not implemented    return 0 ;}// ----------------------------------------------------------------------------ULongParameterHandleValuePairSetImp::valid(ULong) const{    //not implemented    return 0 ;}// ----------------------------------------------------------------------------ULongParameterHandleValuePairSetImp::next(ULong) const{    //not implemented    return 0 ;}// ----------------------------------------------------------------------------// ParameterSetFactory// ----------------------------------------------------------------------------ParameterHandleValuePairSet*ParameterSetFactory::create(ULong size)    throw (MemoryExhausted, ValueCountExceeded,           HandleValuePairMaximumExceeded){    ParameterHandleValuePairSetImp *phvps ;    phvps = new ParameterHandleValuePairSetImp(size);    phvps->_order = RECEIVE ;    phvps->_transport = RELIABLE ;    return (ParameterHandleValuePairSet *) phvps ;}} // namespace certi// $Id: GAV_aux.cc,v 3.11 2004/03/04 20:19:05 breholee Exp $

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -