Zalazan
unread,Jul 4, 2013, 2:28:46 PM7/4/13Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to field...@googlegroups.com
Begin from Line 987, please compare lines that are marked in red.
template <template <typename T> class Field_T, class Data_T>typename Field_T<Data_T>::VecField3DInputFile::readScalarLayersAs(const std::string &layerName) const
{
typedef typename Field<Data_T>::Vec FieldList;
typedef typename Field_T<Data_T>::Vec TypedFieldList;
// First, read the layers as-is
FieldList originals;
originals = readScalarLayers<Data_T>(layerName);
// Loop over fields, converting if needed
TypedFieldList output;
typename FieldList::iterator i = originals.begin();
for (; i != originals.end(); ++i) {
typename Field_T<Data_T>::Ptr targetField;
targetField = field_dynamic_cast<Field_T<Data_T> >(*i);
if (targetField) {
output.push_back(targetField);
} else {
typename Field_T<Data_T>::Ptr newTarget(new Field_T<Data_T>);
newTarget->name = (*i)->name;
newTarget->attribute = (*i)->attribute;
newTarget->copyMetadata(*i);
newTarget->copyFrom(*i);
output.push_back(newTarget);
}
}
return output;
}
//----------------------------------------------------------------------------//
template <template <typename T> class Field_T, class Data_T>
typename Field_T<Data_T>::Vec
Field3DInputFile::readScalarLayersAs(const std::string &partitionName,
const std::string &layerName) const
{
typedef typename Field<Data_T>::Vec FieldList;
typedef typename Field_T<Data_T>::Vec TypedFieldList;
// First, read the layers as-is
FieldList originals;
originals = readScalarLayers<Data_T>(partitionName, layerName);
// Loop over fields, converting if needed
TypedFieldList output;
typename FieldList::iterator i = originals.begin();
for (; i != originals.end(); ++i) {
typename Field_T<Data_T>::Ptr targetField;
targetField = field_dynamic_cast<Field_T<Data_T> >(*i);
if (targetField) {
output.push_back(targetField);
} else {
typename Field_T<Data_T>::Ptr newTarget(new Field_T<Data_T>);
newTarget->name = (*i)->name;
newTarget->attribute = (*i)->attribute;
newTarget->copyMetadata(**i);
newTarget->copyFrom(*i);
output.push_back(newTarget);
}
}
return output;
}
//----------------------------------------------------------------------------//
template <template <typename T> class Field_T, class Data_T>
typename Field_T<Data_T>::Vec
Field3DInputFile::readVectorLayersAs(const std::string &layerName) const
{
typedef typename Field<Data_T>::Vec FieldList;
typedef typename Field_T<Data_T>::Vec TypedFieldList;
// First, read the layers as-is
FieldList originals;
originals = readVectorLayers<Data_T>(layerName);
// Loop over fields, converting if needed
TypedFieldList output;
typename FieldList::iterator i = originals.begin();
for (; i != originals.end(); ++i) {
typename Field_T<Data_T>::Ptr targetField;
targetField = field_dynamic_cast<Field_T<Data_T> >(*i);
if (targetField) {
output.push_back(targetField);
} else {
typename Field_T<Data_T>::Ptr newTarget(new Field_T<Data_T>);
newTarget->name = (*i)->name;
newTarget->attribute = (*i)->attribute;
newTarget->copyMetadata(*i);
newTarget->copyFrom(*i);
output.push_back(newTarget);
}
}
return output;
}
//----------------------------------------------------------------------------//
template <template <typename T> class Field_T, class Data_T>
typename Field_T<Data_T>::Vec
Field3DInputFile::readVectorLayersAs(const std::string &partitionName,
const std::string &layerName) const
{
typedef typename Field<Data_T>::Vec FieldList;
typedef typename Field_T<Data_T>::Vec TypedFieldList;
// First, read the layers as-is
FieldList originals;
originals = readVectorLayers<Data_T>(partitionName, layerName);
// Loop over fields, converting if needed
TypedFieldList output;
typename FieldList::iterator i = originals.begin();
for (; i != originals.end(); ++i) {
typename Field_T<Data_T>::Ptr targetField;
targetField = field_dynamic_cast<Field_T<Data_T> >(*i);
if (targetField) {
output.push_back(targetField);
} else {
typename Field_T<Data_T>::Ptr newTarget(new Field_T<Data_T>);
newTarget->name = (*i)->name;
newTarget->attribute = (*i)->attribute;
newTarget->copyMetadata(*i);
newTarget->copyFrom(*i);
output.push_back(newTarget);
}
}
return output;
}
//----------------------------------------------------------------------------//