//---------------------------------------------------------------------------

#ifndef CDSLayerFH
#define CDSLayerFH
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------

#include <Classes.hpp>
#include <ADODB.hpp>
#include <DB.hpp>
#include "ITSLibF.h"
#include "ITSDbF.h"
//---------------------------------------------------------------------------

class TItsVrtx
{
public:
    TItsVrtx()  {};
    ~TItsVrtx() {};

private:

public:
    String ID;
    String X_CRDN_ARR;
    String Y_CRDN_ARR;

public:
};
//---------------------------------------------------------------------------

class TItsVrtxList
{
public:
    TItsVrtxList()  {};
    ~TItsVrtxList() {};

private:

public:
    int    ZOOM;
    TItsMap<String, TItsVrtx*> FLists;

public:
};
//---------------------------------------------------------------------------

/*
*  LAYER class
*/
class TItsLayer
{
public:
    TItsLayer(String ALayerType, int ALayerIdx, String AName)
    {
        Type  = ALayerType;
        Index = ALayerIdx;
        Name  = AName;
        Visible = true;
        Enabled = false;
        Objects = 0;
        Total   = 0;
        Normal  = 0;
        Error   = 0;
    }
    ~TItsLayer() {};

private:

public:
    String Type;
    String Name;
    int    Index;
    bool   Visible;
    bool   Enabled;
    int    Objects;
    int    Total;
    int    Normal;
    int    Error;
    String arrObj;

};
//---------------------------------------------------------------------------

/*
* Layer Manager
*/
class TItsLayerManager
{
public:
    TItsLayerManager();
    virtual ~TItsLayerManager();

public:

    TItsMap<String, TItsLayer*>    FLists;
    //TItsMap<int,    TItsVrtxList*> FVrtxs;

public:
    int GetLayerIndex(String ALayerType);
    String GetLayerType(int ALayerIndex);
    String GetLayerName(int ALayerIndex);
    String GetLayerName(String ALayerType);
    void ClearFacilityInfo();
};
//---------------------------------------------------------------------------
extern TItsLayerManager *ItsLayerManager;
//---------------------------------------------------------------------------

#endif
