When used like this, cuando always requires the subjunctive, however si depends on the clause.
If you are making a general statement and not referring to a specific point in time, use si with the indicative in both parts of the clause. It's just the same as English.
Si tengo mi perro en mis brazos, estoy feliz.
If I have my dog in my arms, I am happy.
Si tenía mi perro en mis brazos, estaba feliz.
If I had my dog in my arms, I was happy.
If you are talking about specific point in time, use si with the subjunctive verb and the corresponding conditional. This is where Spanish differs from English (especially British English), because the subjunctive is used to talk about a hypothetical situation.
Si tuviera mi perro en mis brazos, estaría feliz.
If I had my dog in my arms, I would be happy.
Si hubiera tenido mi perro en mis brazos, habría estado feliz.
If I had had my dog in my arms, I would have been happy.