- fixed progress indicator

- cleaned up


git-svn-id: http://moon:8086/svn/software/trunk/projects/Rbm@624 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
2019-11-07 16:21:35 +00:00
parent 5d281ddca6
commit 4e21dd8114
5 changed files with 50 additions and 33 deletions
+27 -12
View File
@@ -38,13 +38,15 @@
Describe your class and how it works here!
//[/Comments]
*/
class MainComponent : public Component,
public Thread,
public LayerConstructor,
public ButtonListener,
public SliderListener,
public LabelListener,
public ComboBoxListener
class MainComponent
: public Component
, public Thread
, public LayerConstructor
, public RbmComponentListener
, public ButtonListener
, public SliderListener
, public LabelListener
, public ComboBoxListener
{
public:
//==============================================================================
@@ -53,7 +55,7 @@ public:
//==============================================================================
//[UserMethods] -- You can add your own custom methods in this section.
void onProgressChanged(size_t progressPercent);
bool onProgressChanged(size_t progressPercent) override;
//[/UserMethods]
void paint (Graphics& g);
@@ -73,16 +75,17 @@ public:
Layer* onConstruct(const std::string &name, size_t id, size_t numVisibleX, size_t numVisibleY, size_t numHidden)
{
RbmComponent *pComp = new RbmComponent(name, id, numVisibleX, numVisibleY, numHidden);
RbmComponent *pComp = new RbmComponent(name, id, numVisibleX, numVisibleY, numHidden, this);
addAndMakeVisible(pComp);
return pComp;
}
private:
//[UserVariables] -- You can add your own custom variables in this section.
static const size_t DBN_SIZE = 4;
ScopedPointer<Stack> m_stack;
Layer *m_pLayer;
RbmComponent *m_pLayer;
arma::mat m_trainingData;
int m_weightIndex;
int m_trainingIndex;
@@ -96,18 +99,30 @@ private:
bool m_doStop;
void clearTraining()
{
patterSlider->setRange(0, m_stack->numTraining(m_trainingData)-1, 1);
}
void loadTraining(const char *pFilename)
void loadTraining()
{
m_trainingData = m_stack->loadTraining();
patterSlider->setRange(0, m_stack->numTraining(m_trainingData)-1, 1);
}
void saveTraining(const char *pFilename)
void saveTraining()
{
m_stack->save();
}
void addTraining(const arma::mat &training)
{
m_stack->addTraining(m_trainingData, training);
patterSlider->setRange(0, m_stack->numTraining(m_trainingData)-1, 1);
}
void removeTrainingAt(size_t index)
{
m_stack->delTraining(m_trainingData, index);
patterSlider->setRange(0, m_stack->numTraining(m_trainingData)-1, 1);
}
void updateControls();