Fix CIFAR 10 Testing example.
[ti-machine-learning/ti-machine-learning.git] / src / common / cnn / timlCNNSetBatchSize.c
1 /*\r
2  * timlCNNSetBatchSize.c\r
3  *\r
4  *  Created on: Apr 9, 2015\r
5  *      Author: a0282871\r
6  */\r
7 \r
8 \r
9 #include "../api/timl.h"\r
10 \r
11 \r
12 /******************************************************************************/\r
13 /*!\r
14  * \ingroup       cnn\r
15  * \brief         Reset the parameters of the CNN\r
16  * \param[in,out] cnn CNN\r
17  * \return        Error code\r
18  */\r
19 /******************************************************************************/\r
20 \r
21 int timlCNNSetBatchSize(timlConvNeuralNetwork *cnn, int batchSize)\r
22 {\r
23    if (cnn == NULL) {\r
24       return ERROR_CNN_NULL_PTR;\r
25    }\r
26    cnn->params.batchSize = batchSize;\r
27    timlCNNLayer *layer = cnn->head;\r
28 \r
29    while (layer != NULL) {\r
30       switch (layer->type) {\r
31          case CNN_Input:\r
32             layer->batchSize = batchSize;\r
33             break;\r
34          case CNN_Dropout:\r
35             layer->batchSize = layer->prev->batchSize;\r
36             break;\r
37          case CNN_Conv:\r
38             layer->batchSize = layer->prev->batchSize;\r
39             break;\r
40          case CNN_Norm:\r
41             layer->batchSize = layer->prev->batchSize;\r
42             break;\r
43          case CNN_Pooling:\r
44             layer->batchSize = layer->prev->batchSize;\r
45             break;\r
46          case CNN_Linear:\r
47             layer->batchSize = layer->prev->batchSize;\r
48             break;\r
49          case CNN_Nonlinear:\r
50             layer->batchSize = layer->prev->batchSize;\r
51             break;\r
52          case CNN_Accuracy:\r
53             layer->batchSize = layer->prev->batchSize;\r
54             break;\r
55          case CNN_SoftmaxCost:\r
56             layer->batchSize = layer->prev->batchSize;\r
57             break;\r
58          case CNN_Softmax:\r
59             layer->batchSize = layer->prev->batchSize;\r
60             break;\r
61          default:\r
62             break;\r
63       }\r
64       layer = layer->next;\r
65    }\r
66 \r
67    return 0;\r
68 }\r