OpenCores
URL https://opencores.org/ocsvn/pcie_ds_dma/pcie_ds_dma/trunk

Subversion Repositories pcie_ds_dma

[/] [pcie_ds_dma/] [trunk/] [soft/] [linux/] [common/] [utils/] [tf_workparam.h] - Diff between revs 2 and 6

Only display areas with differences | Details | Blame | View Log

Rev 2 Rev 6
/**
 
        \file
 
        \brief  Объявление класса TF_WorkParam
 
 
 
        \version 1
 
 
 
 
 
*/
 
 
 
#pragma once
 
 
 
 
 
 
 
 
 
 
#ifndef __TF_WORK_PARAM_H__
 
#define __TF_WORK_PARAM_H__
 
 
//! Класс хранения параметров обработки
//! Класс хранения параметров обработки
/**
/**
 
 
        \ingroup NodeWork
        \ingroup NodeWork
 
 
        Класс содержит параметры используемые при обработке.
        Класс содержит параметры используемые при обработке.
        Парметры могут загружаться из файла данных.
        Парметры могут загружаться из файла данных.
        Каждый парметр может быть установлен с использованием
        Каждый парметр может быть установлен с использованием
        текстовой строки.
        текстовой строки.
 
 
*/
*/
class TF_WorkParam
class TF_WorkParam
{
{
public:
public:
 
 
    //!  Структура массива параметров
    //!  Структура массива параметров
    /**     Структра связывает название параметра и указатель на соответсвующую
    /**     Структра связывает название параметра и указатель на соответсвующую
                        переменную.
                        переменную.
 
 
                        \ingroup WorkFunc
                        \ingroup WorkFunc
 
 
        */
        */
    struct STR_CFG {
    struct STR_CFG {
 
 
        U32     is_float;       //!< 1 - число с плавающей точкой; 0 - целое.
        U32     is_float;       //!< 1 - число с плавающей точкой; 0 - целое.
        const char    *name;                    //!< Название параметра
        const char *name;                       //!< Название параметра
        const char      *def;                   //!< Значение по умолчанию
        const char *def;                        //!< Значение по умолчанию
        U32     *ptr;                   //!< Указатель на переменную
        U32     *ptr;                   //!< Указатель на переменную
        const char      *cmt;                   //!< Комментарий для параметра
        const char      *cmt;                   //!< Комментарий для параметра
 
 
        STR_CFG(
        STR_CFG(
                U32     p_is_float,     //!< 1 - число с плавающей точкой; 0 - целое.
                U32     p_is_float,     //!< 1 - число с плавающей точкой; 0 - целое.
                const char    *p_name,          //!< Название параметра
                const char    *p_name,          //!< Название параметра
                const char      *p_def,                 //!< Значение по умолчанию
                const char      *p_def,                 //!< Значение по умолчанию
                U32     *p_ptr,                 //!< Указатель на переменную
                U32     *p_ptr,                 //!< Указатель на переменную
                const char      *p_cmt                  //!< Комментарий для параметра
                const char      *p_cmt                  //!< Комментарий для параметра
                ){
                ){
            is_float = p_is_float;
            is_float = p_is_float;
            name         = p_name;
            name         = p_name;
            def          = p_def;
            def          = p_def;
            ptr          = p_ptr;
            ptr          = p_ptr;
            cmt          = p_cmt;
            cmt          = p_cmt;
        }
        }
 
 
        STR_CFG(
        STR_CFG(
                ){
                ){
            is_float = 100;
            is_float = 100;
            name         = NULL;
            name         = NULL;
            def          = NULL;
            def          = NULL;
            ptr          = NULL;
            ptr          = NULL;
            cmt          = NULL;
            cmt          = NULL;
        }
        }
 
 
    };
    };
 
 
 
 
 
 
 
 
    TF_WorkParam( void );
    TF_WorkParam( void );
    ~TF_WorkParam( void );
    ~TF_WorkParam( void );
 
 
    //! Получение параметров из файла инициализации
    //! Получение параметров из файла инициализации
    void GetParamFromFile(BRDCHAR* fname );
    void GetParamFromFile(BRDCHAR* fname );
 
 
    //! Получение параметра из строки
    //! Получение параметра из строки
    U32 GetParamFromStr( char* str );
    U32 GetParamFromStr( char* str );
 
 
    STR_CFG  array_cfg[500];
    STR_CFG  array_cfg[500];
    U32          max_item;
    U32          max_item;
 
 
    //! Расчёт параметров
    //! Расчёт параметров
    virtual void CalculateParams( void );
    virtual void CalculateParams( void );
 
 
    //! Сохранение параметров в памяти
    //! Сохранение параметров в памяти
    U32 PutParamToMemory( char* ptr, U32 max_size );
    U32 PutParamToMemory( char* ptr, U32 max_size );
 
 
    //! Получение параметров из памяти
    //! Получение параметров из памяти
    void GetParamFromMemory( char* ptr );
    void GetParamFromMemory( char* ptr );
 
 
    //! Установка параметров по умолчанию
    //! Установка параметров по умолчанию
    virtual void SetDefault( void );
    virtual void SetDefault( void );
 
 
    //! Отображение параметров
    //! Отображение параметров
    virtual void ShowParam( void );
    virtual void ShowParam( void );
 
 
    //! Функция отображения параметров
    //! Функция отображения параметров
    void log_out( const char* fmt, ... );
    void log_out( const char* fmt, ... );
};
};
 
 
 No newline at end of file
 No newline at end of file
 
#endif //__TF_WORK_PARAM_H__
 
 
 No newline at end of file
 No newline at end of file

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.