Navigation Menu

Skip to content

Commit

Permalink
use SGVector<char> as workaround for SGVector<void>
Browse files Browse the repository at this point in the history
  • Loading branch information
Soeren Sonnenburg committed Oct 12, 2011
1 parent 2440e3a commit 49c5ef7
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 19 deletions.
2 changes: 1 addition & 1 deletion src/shogun/features/Features.h
Expand Up @@ -257,7 +257,7 @@ class CFeatures : public CSGObject
* @param indices indices of feature elements to copy
* @return new CFeatures instance with copies of feature data
*/
CFeatures* copy_subset(SGVector<index_t> indices);
virtual CFeatures* copy_subset(SGVector<index_t> indices);

private:
/** feature properties */
Expand Down
26 changes: 10 additions & 16 deletions src/shogun/modelselection/ModelSelectionParameters.cpp
Expand Up @@ -66,8 +66,8 @@ CModelSelectionParameters::~CModelSelectionParameters()
void CModelSelectionParameters::append_child(CModelSelectionParameters* child)
{
/* only possible if there are no values set */
//FIXME void if (m_values.vector)
//FIXME void SG_ERROR("not possible to append child: there already is a range\n");
if (m_values.vector)
SG_ERROR("not possible to append child: there already is a range\n");

/* do a basic check if the add is possible */
if (m_sgobject)
Expand Down Expand Up @@ -98,7 +98,7 @@ void CModelSelectionParameters::set_values(SGVector<T> values)
{
/* possibly delete old range values */
delete_values();
//FIXME void m_values=values;
m_values=(SGVector<char>) values;
}

void CModelSelectionParameters::build_values(float64_t min, float64_t max,
Expand Down Expand Up @@ -139,8 +139,8 @@ void CModelSelectionParameters::build_values(EMSParamType value_type, void* min,
*((float64_t*)step),
*((float64_t*)type_base));

//FIXME void m_values.vector=(void*)values.vector;
//FIXME void m_values.vlen=values.vlen;
m_values.vector=(char*)values.vector;
m_values.vlen=values.vlen;
}
else if (value_type==MSPT_INT32)
{
Expand All @@ -151,8 +151,8 @@ void CModelSelectionParameters::build_values(EMSParamType value_type, void* min,
*((int32_t*)step),
*((int32_t*)type_base));

//FIXME void m_values.vector=(void*)values.vector;
//FIXME void m_values.vlen=values.vlen;
m_values.vector=(char*)values.vector;
m_values.vlen=values.vlen;
}
else if (value_type==MSPT_NONE)
{
Expand All @@ -173,7 +173,6 @@ CDynamicObjectArray<CParameterCombination>* CModelSelectionParameters::get_combi
* build trees of Parameter instances which each contain one value
*/

/* FIXME void
if (m_values.vector)
{
for (index_t i=0; i<m_values.vlen; ++i)
Expand Down Expand Up @@ -201,7 +200,7 @@ CDynamicObjectArray<CParameterCombination>* CModelSelectionParameters::get_combi
}

return result;
}*/
}


/* two cases here, similar
Expand All @@ -225,12 +224,10 @@ CDynamicObjectArray<CParameterCombination>* CModelSelectionParameters::get_combi
CModelSelectionParameters* current=m_child_nodes->get_element(i);

/* split children with values and children with other */
/* FIXME void
if (current->m_values.vector)
value_children.append_element(current);
else
non_value_children.append_element(current);
*/

SG_UNREF(current);
}
Expand Down Expand Up @@ -419,8 +416,7 @@ void CModelSelectionParameters::print_tree(int prefix_num)
}
else
{
/* FIXME
void if (m_values.vector)
if (m_values.vector)
{
// value node
SG_PRINT("%s%s with values: ", prefix, m_node_name);
Expand All @@ -443,7 +439,6 @@ void CModelSelectionParameters::print_tree(int prefix_num)
}
else
SG_PRINT("root\n");
*/
}
}

Expand All @@ -452,7 +447,6 @@ void CModelSelectionParameters::print_tree(int prefix_num)

void CModelSelectionParameters::delete_values()
{
/* FIXME void
if (m_values.vector)
{
switch (m_value_type)
Expand All @@ -470,5 +464,5 @@ void CModelSelectionParameters::delete_values()
SG_ERROR("Unknown type for model selection parameter!\n");
break;
}
}*/
}
}
3 changes: 1 addition & 2 deletions src/shogun/modelselection/ModelSelectionParameters.h
Expand Up @@ -147,8 +147,7 @@ class CModelSelectionParameters: public CSGObject
private:
CSGObject* m_sgobject;
const char* m_node_name;
//FIXME void is not possible w/ SGVector<void> m_values;
void* m_values;
SGVector<char> m_values; // dummy void type char
CDynamicObjectArray<CModelSelectionParameters>* m_child_nodes;
EMSParamType m_value_type;
};
Expand Down

0 comments on commit 49c5ef7

Please sign in to comment.