void SoundCommon::Initialize( const SSoundInit& SoundInit ) { SetPriority( SoundInit.m_Priority ); SetIsStream( SoundInit.m_IsStream ); SetCategory( SoundInit.m_Category ); SetLooping( SoundInit.m_IsLooping ); SetIs3D( SoundInit.m_Is3D ); SetShouldCalcOcclusion( SoundInit.m_ShouldCalcOcclusion ); SetBaseVolume( SoundInit.m_Volume ); SetFalloffRadius( SoundInit.m_FalloffDistance ); SetPanBias( SoundInit.m_PanBiasNear, SoundInit.m_PanBiasFar ); SetPanPower( SoundInit.m_PanPower ); SetMinimumAttenuation( SoundInit.m_MinimumAttenuation ); SetRearAttenuation( SoundInit.m_RearAttenuation ); }
void ResampleAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("ResampleAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("useExtents")) != 0) SetUseExtents(node->AsBool()); if((node = searchNode->GetNode("startX")) != 0) SetStartX(node->AsDouble()); if((node = searchNode->GetNode("endX")) != 0) SetEndX(node->AsDouble()); if((node = searchNode->GetNode("samplesX")) != 0) SetSamplesX(node->AsInt()); if((node = searchNode->GetNode("startY")) != 0) SetStartY(node->AsDouble()); if((node = searchNode->GetNode("endY")) != 0) SetEndY(node->AsDouble()); if((node = searchNode->GetNode("samplesY")) != 0) SetSamplesY(node->AsInt()); if((node = searchNode->GetNode("is3D")) != 0) SetIs3D(node->AsBool()); if((node = searchNode->GetNode("startZ")) != 0) SetStartZ(node->AsDouble()); if((node = searchNode->GetNode("endZ")) != 0) SetEndZ(node->AsDouble()); if((node = searchNode->GetNode("samplesZ")) != 0) SetSamplesZ(node->AsInt()); if((node = searchNode->GetNode("tieResolver")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 3) SetTieResolver(TieResolver(ival)); } else if(node->GetNodeType() == STRING_NODE) { TieResolver value; if(TieResolver_FromString(node->AsString(), value)) SetTieResolver(value); } } if((node = searchNode->GetNode("tieResolverVariable")) != 0) SetTieResolverVariable(node->AsString()); if((node = searchNode->GetNode("defaultValue")) != 0) SetDefaultValue(node->AsDouble()); if((node = searchNode->GetNode("distributedResample")) != 0) SetDistributedResample(node->AsBool()); if((node = searchNode->GetNode("cellCenteredOutput")) != 0) SetCellCenteredOutput(node->AsBool()); // The SetStartX, etc calls trample useExtents. // Set to the correct value at the end. if((node = searchNode->GetNode("useExtents")) != 0) SetUseExtents(node->AsBool()); }