Please help me in some parameters which are not understandable

I want to know about some parameters used in add function and want to know what is the working of set function and how the all functions will call by step wise? I shared the code please help me out in this.....

In this code I want know code explanation. so please help me

add() is used to create a new farming pool. Every farming contract has a total reward per day let's say 1 token. And 10 Allocation points accross all farms. So 1 point is worth 0.1tokens per day for the farm. The alloc points are also used to weight the pools like 3.5x boost or 15x boost and that kind of stuff. So _allocpoints takes the Allocation points. _want takes the address of the token that the user should deposit. If _withupdate is true it calls the massUpdatePools() which might update rewards and stuff. _strat is used for the strategy contract. On some website from the farms you see something like "view strategy" If you click on it you will get to the strategy contract.

Then Alloc points will bbe added, last reward time will be set and the pool will be added to the PooInfo.

set() just updates a pool. It can change the alloc points and boost a pool let's say 3x instead of 1x. So only the Allocation points will be changed.

Keep in mind that I am not a pro with these farm and never made one. This is just from what I saw. Some things might be wrong!