⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vec1d.cpp

📁 一个外国人写的人脸检测程序
💻 CPP
字号:


#include "stdafx.h"
#include "vec1d.h"


vec1D::vec1D(unsigned int size, int offset, const float* data) : m_size(size), m_offset(offset), m_data(0)
{
        m_last = (m_size + m_offset) - 1;
        m_data = (float *)_aligned_malloc(m_size * sizeof(float), 16);     //MMX alignement
    
        for (unsigned int i = 0; i < m_size; i++) {
                if (data != 0)
                        m_data[i] = data[i];
                else
                        m_data[i] = 0.0f;
        }

        m_data -= m_offset;
}

vec1D::vec1D(const vec1D& v) : m_data(0)
{
        init(v);
}

vec1D::~vec1D()
{
        close();
}


void vec1D::init(const vec1D& v)
{
        close();

        m_size = v.size();
        m_offset = v.first();
        const float* data = v.data();
   
        m_last = (m_size + m_offset) - 1;
        m_data = (float *)_aligned_malloc(m_size * sizeof(float), 16);     //MMX alignement    

        for (unsigned int i = 0; i < m_size; i++)
                m_data[i] = data[i];  

        m_data -= m_offset;
}

void vec1D::close()
{
        if (m_data != 0) {
                m_data +=  m_offset;
                _aligned_free(m_data);
        }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -