/*******************************************************************************/
/*        Description file for the carousel in standalone mode                 */
/*                                                                             */
/*******************************************************************************/


/*******************************************************************************/
/* The file carousel__simulation.groovy is generated with the script :         */
/* generateCarouselDescription.sh                                              */
/* from the files carousel-standalone_head,     socket__simulation__model      */
/* DO NOT MODIFY carousel__simulation.groovy : the changes will be lost after  */
/* the next generation.                                                        */
/*******************************************************************************/

package carouselSimulation

import org.lsst.ccs.subsystems.fcs.*
import org.lsst.ccs.subsystems.fcs.singlefiltertest.*
import org.lsst.ccs.subsystems.fcs.common.*
import org.lsst.ccs.subsystems.fcs.drivers.*
import org.lsst.ccs.subsystems.fcs.simulation.*
import org.lsst.ccs.subsystems.fcs.testbench.*
import org.lsst.ccs.framework.Configurable
import org.lsst.ccs.description.groovy.CCSBuilder


import static org.lsst.gruth.jutils.MapArgs.*

//for each socket we define a position on the carousel : positionOnCarouselSocket
//and the position of the socket when it is at STANDBY position.
def positionOnCarouselSocket1 = 0
def positionOnCarouselSocket2 = 72
def positionOnCarouselSocket3 = 144
def positionOnCarouselSocket4 = 216
def positionOnCarouselSocket5 = 288
def standbyPositionSocket1 = 0
def standbyPositionSocket2 = 288
def standbyPositionSocket3 = 216
def standbyPositionSocket4 = 144
def standbyPositionSocket5 = 72


//Carousel Can Open Devices (CAN-CBX-AI814) for Carousel brakes status + brakes temperatures
def adcName = "ai814"

//Carousel clamps controllers name
def clampXminusControllerName = "clampXminusController" //controller to unlock clamp on the side Xminus
def clampXplusControllerName =  "clampXplusController" //controller to unlock clamp on the side Xplus

def plutoGatewayName = "fakePlutoGateway" // to monitor the fake autochanger sensors

CCSBuilder builder = ["carousel-standalone"]

builder.
        main ( CarouselMainModule,
                argMap(
                        ref("bridge"),
                        ref("filterManager"),
                        a("plutoGatewayName",plutoGatewayName)
                        ))
                 


            //begin description of Main submodules
            {       
                //-------------------------
