10 Commits
0.2.0 ... 0.4.0

26 changed files with 265 additions and 116 deletions

85
.travis.yml Normal file
View File

@@ -0,0 +1,85 @@
language: cpp
sudo: required
dist: trusty
branches:
only:
- master
- dev
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.9
- expect
- binutils-mingw-w64-x86-64 # 64bit MinGW
- gcc-mingw-w64-x86-64
- g++-mingw-w64-x86-64
matrix:
include:
- os: linux
env: CONF=release BUILDER=gcc TARGET=Linux TAG=Linux COMPILATOR_OPTION="--compilator-version=4.9" GCOV=--gcov
compiler: gcc
- os: linux
env: CONF=debug BUILDER=clang TARGET=Linux
compiler: clang
- os: linux
env: CONF=release BUILDER=gcc TARGET=Windows TAG=Mingw
compiler: x86_64-w64-mingw32-gcc
- os: linux
env: CONF=release BUILDER=gcc TARGET=Android TAG=Android DISABLE_PACKAGE=-p
compiler: gcc
- os: osx
env: CONF=release BUILDER=clang TARGET=MacOs TAG=MacOs
compiler: clang
- os: osx
env: CONF=release BUILDER=clang TARGET=IOs TAG=IOs
compiler: clang
install:
- cd ..
- pip install --user lutin
- if [ "$TAG" == "Android" ]; then
git clone --depth 1 --branch master https://github.com/HeeroYui/android-download-tool;
./android-download-tool/dl-android.sh;
fi
- git clone --depth 1 --branch master https://github.com/atria-soft/ci.git
- cd -
before_script:
- cd ..
- git clone https://github.com/atria-soft/elog.git -b $TRAVIS_BRANCH
- git clone https://github.com/atria-soft/etk.git -b $TRAVIS_BRANCH
- git clone https://github.com/atria-soft/ememory.git -b $TRAVIS_BRANCH
- git clone https://github.com/generic-library/gtest-lutin.git --recursive
- git clone https://github.com/generic-library/z-lutin.git --recursive
- pwd
- ls -l
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then
export PATH=$PATH:/Users/travis/Library/Python/2.7/bin/;
fi
- ./ci/build_send.py --tag=$TAG --status=START;
script:
- lutin -w -j4 -C -P -t $TARGET -c $BUILDER $COMPILATOR_OPTION $BUS -m $CONF $GCOV $DISABLE_PACKAGE eproperty-*; STATUS=$?
- ./ci/build_send.py --tag=$TAG --status="$STATUS";
after_script:
- if [ "$GCOV" != "" ]; then
./ci/warning_send.py --find-path ./out/Linux_x86_64/$CONF/build/$BUILDER/eproperty/;
fi
- lutin -w -j4 -C -P -t$TARGET -c $BUILDER $COMPILATOR_OPTION $BUS -m $CONF $GCOV $DISABLE_PACKAGE eproperty-test?run:--elog-level=3 | tee out_test.txt
- if [ "$GCOV" != "" ]; then
./ci/test_send.py --file=out_test.txt;
lutin -C -P -t $TARGET -c $BUILDER $COMPILATOR_OPTION $BUS -m $CONF -p eproperty?gcov;
./ci/coverage_send.py --json=out/Linux_x86_64/$CONF/build/$BUILDER/eproperty/eproperty.json;
fi
notifications:
email:
- yui.heero@gmail.com

View File

@@ -1,2 +1,80 @@
# eproperty e-property
(APACHE v2.0) class property depending on etk only ==========
`eproperty` is c++ simple class property handling that permit to change parameter through XML file.
Release (master)
----------------
[![Build Status](https://travis-ci.org/atria-soft/eproperty.svg?branch=master)](https://travis-ci.org/atria-soft/eproperty)
[![Coverage Status](http://atria-soft.com/ci/coverage/atria-soft/eproperty.svg?branch=master)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Test Status](http://atria-soft.com/ci/test/atria-soft/eproperty.svg?branch=master)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Warning Status](http://atria-soft.com/ci/warning/atria-soft/eproperty.svg?branch=master)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Build Status](http://atria-soft.com/ci/build/atria-soft/eproperty.svg?branch=master&tag=Linux)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Build Status](http://atria-soft.com/ci/build/atria-soft/eproperty.svg?branch=master&tag=MacOs)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Build Status](http://atria-soft.com/ci/build/atria-soft/eproperty.svg?branch=master&tag=Mingw)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Build Status](http://atria-soft.com/ci/build/atria-soft/eproperty.svg?branch=master&tag=Android)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Build Status](http://atria-soft.com/ci/build/atria-soft/eproperty.svg?branch=master&tag=IOs)](http://atria-soft.com/ci/atria-soft/eproperty)
Developement (dev)
------------------
[![Build Status](https://travis-ci.org/atria-soft/eproperty.svg?branch=dev)](https://travis-ci.org/atria-soft/eproperty)
[![Coverage Status](http://atria-soft.com/ci/coverage/atria-soft/eproperty.svg?branch=dev)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Test Status](http://atria-soft.com/ci/test/atria-soft/eproperty.svg?branch=dev)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Warning Status](http://atria-soft.com/ci/warning/atria-soft/eproperty.svg?branch=dev)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Build Status](http://atria-soft.com/ci/build/atria-soft/eproperty.svg?branch=dev&tag=Linux)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Build Status](http://atria-soft.com/ci/build/atria-soft/eproperty.svg?branch=dev&tag=MacOs)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Build Status](http://atria-soft.com/ci/build/atria-soft/eproperty.svg?branch=dev&tag=Mingw)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Build Status](http://atria-soft.com/ci/build/atria-soft/eproperty.svg?branch=dev&tag=Android)](http://atria-soft.com/ci/atria-soft/eproperty)
[![Build Status](http://atria-soft.com/ci/build/atria-soft/eproperty.svg?branch=dev&tag=IOs)](http://atria-soft.com/ci/atria-soft/eproperty)
Instructions
============
download Build system:
----------------------
sudo pip install lutin
sudo pip install pillow
download the software:
----------------------
mkdir WORKING_DIRECTORY
cd WORKING_DIRECTORY
git clone https://github.com/atria-soft/etk.git
git clone https://github.com/atria-soft/elog.git
git clone https://github.com/atria-soft/ememory.git
git clone https://github.com/atria-soft/eproperty.git
git clone https://github.com/generic-library/gtest-lutin.git --recursive
git clone https://github.com/generic-library/z-lutin.git --recursive
Compile software:
-----------------
cd WORKING_DIRECTORY
lutin -C -P eproperty-test eproperty-sample
License (APACHE v2.0)
=====================
Copyright eproperty Edouard DUPIN
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

1
authors.txt Normal file
View File

@@ -0,0 +1 @@
MR Edouard DUPIN <yui.heero@gmail.com>

View File

@@ -14,7 +14,7 @@ def create(target, module_name):
module_name, module_name,
"doc" "doc"
]) ])
my_module.add_module_depend([ my_module.add_depend([
'etk' 'etk'
]) ])
my_module.add_sample_path([ my_module.add_sample_path([
@@ -24,10 +24,10 @@ def create(target, module_name):
'*operator<<*', '*operator<<*',
]) ])
my_module.add_exclude_file([ my_module.add_exclude_file([
'debug.h', 'debug.hpp',
]) ])
my_module.add_file_patterns([ my_module.add_file_patterns([
'*.h', '*.hpp',
'*.md', '*.md',
]) ])

View File

@@ -9,7 +9,7 @@
#include <vector> #include <vector>
#include <map> #include <map>
#include <eproperty/InterfaceData.h> #include <eproperty/InterfaceData.hpp>
namespace eproperty { namespace eproperty {
/** /**

View File

@@ -6,10 +6,10 @@
* @license APACHE v2.0 (see license file) * @license APACHE v2.0 (see license file)
*/ */
#include <eproperty/debug.h> #include <eproperty/debug.hpp>
#include <eproperty/List.h> #include <eproperty/List.hpp>
#include <eproperty/Property.h> #include <eproperty/Property.hpp>
#include <eproperty/InterfaceData.h> #include <eproperty/InterfaceData.hpp>
eproperty::InterfaceData::InterfaceData() { eproperty::InterfaceData::InterfaceData() {

View File

@@ -7,7 +7,7 @@
*/ */
#pragma once #pragma once
#include <eproperty/PropertyType.h> #include <eproperty/PropertyType.hpp>
#include <map> #include <map>
#include <typeinfo> #include <typeinfo>

View File

@@ -6,9 +6,9 @@
* @license APACHE v2.0 (see license file) * @license APACHE v2.0 (see license file)
*/ */
#include <eproperty/debug.h> #include <eproperty/debug.hpp>
#include <eproperty/Interface.h> #include <eproperty/Interface.hpp>
#include <eproperty/Property.h> #include <eproperty/Property.hpp>
eproperty::Property::Property(eproperty::Interface* _paramInterfaceLink, const std::string& _name) : eproperty::Property::Property(eproperty::Interface* _paramInterfaceLink, const std::string& _name) :

View File

@@ -7,7 +7,7 @@
*/ */
#pragma once #pragma once
#include <eproperty/Interface.h> #include <eproperty/Interface.hpp>
#include <string> #include <string>
#include <typeinfo> #include <typeinfo>
#include <functional> #include <functional>

View File

@@ -7,9 +7,9 @@
*/ */
#pragma once #pragma once
#include <eproperty/Interface.h> #include <eproperty/Interface.hpp>
#include <eproperty/Property.h> #include <eproperty/Property.hpp>
#include <eproperty/debug.h> #include <eproperty/debug.hpp>
namespace eproperty { namespace eproperty {
/** /**

View File

@@ -7,8 +7,8 @@
*/ */
#pragma once #pragma once
#include <eproperty/Interface.h> #include <eproperty/Interface.hpp>
#include <eproperty/Value.h> #include <eproperty/Value.hpp>
#include <typeinfo> #include <typeinfo>
namespace eproperty { namespace eproperty {

View File

@@ -7,11 +7,11 @@
*/ */
#pragma once #pragma once
#include <eproperty/PropertyType.h> #include <eproperty/PropertyType.hpp>
#include <etk/types.h> #include <etk/types.hpp>
#include <etk/math/Vector2D.h> #include <etk/math/Vector2D.hpp>
#include <etk/math/Vector3D.h> #include <etk/math/Vector3D.hpp>
#include <etk/Color.h> #include <etk/Color.hpp>
namespace eproperty { namespace eproperty {
/** /**

View File

@@ -6,7 +6,7 @@
* @license APACHE v2.0 (see license file) * @license APACHE v2.0 (see license file)
*/ */
#include <eproperty/debug.h> #include <eproperty/debug.hpp>
int32_t eproperty::getLogId() { int32_t eproperty::getLogId() {
static int32_t g_val = elog::registerInstance("eproperty"); static int32_t g_val = elog::registerInstance("eproperty");

View File

@@ -7,7 +7,7 @@
*/ */
#pragma once #pragma once
#include <elog/log.h> #include <elog/log.hpp>
namespace eproperty { namespace eproperty {
int32_t getLogId(); int32_t getLogId();

View File

@@ -6,10 +6,10 @@
* @license APACHE v2.0 (see license file) * @license APACHE v2.0 (see license file)
*/ */
#include <eproperty/details/Range.hxx> #include <eproperty/details/Range.hxx>
#include <etk/types.h> #include <etk/types.hpp>
#include <etk/math/Vector2D.h> #include <etk/math/Vector2D.hpp>
#include <etk/math/Vector3D.h> #include <etk/math/Vector3D.hpp>
#include <etk/Color.h> #include <etk/Color.hpp>
// void generic properties // void generic properties
template class eproperty::Range<int64_t>; template class eproperty::Range<int64_t>;

View File

@@ -7,7 +7,7 @@
*/ */
#pragma once #pragma once
#include <eproperty/Range.h> #include <eproperty/Range.hpp>
template<class TYPE> template<class TYPE>

View File

@@ -7,10 +7,10 @@
*/ */
#include <eproperty/details/Value.hxx> #include <eproperty/details/Value.hxx>
#include <etk/types.h> #include <etk/types.hpp>
#include <etk/math/Vector2D.h> #include <etk/math/Vector2D.hpp>
#include <etk/math/Vector3D.h> #include <etk/math/Vector3D.hpp>
#include <etk/Color.h> #include <etk/Color.hpp>
// void generic properties // void generic properties
template class eproperty::Value<bool>; template class eproperty::Value<bool>;

View File

@@ -7,7 +7,7 @@
*/ */
#pragma once #pragma once
#include <eproperty/Value.h> #include <eproperty/Value.hpp>
template<class TYPE> template<class TYPE>

View File

@@ -1,7 +1,6 @@
#!/usr/bin/python #!/usr/bin/python
import lutin.module as module import lutin.debug as debug
import lutin.tools as tools import lutin.tools as tools
import datetime
def get_type(): def get_type():
return "BINARY" return "BINARY"
@@ -22,13 +21,15 @@ def get_compagny_name():
return "atria-soft" return "atria-soft"
def get_maintainer(): def get_maintainer():
return ["Mr DUPIN Edouard <yui.heero@gmail.com>"] return "authors.txt"
def create(target, module_name): def configure(target, my_module):
my_module = module.Module(__file__, module_name, get_type())
my_module.add_src_file([ my_module.add_src_file([
'sample/sampleAll.cpp' 'sample/sampleAll.cpp'
]) ])
my_module.add_module_depend(['eproperty', 'test-debug']) my_module.add_depend([
return my_module 'eproperty',
'test-debug'
])
return True

View File

@@ -1,7 +1,6 @@
#!/usr/bin/python #!/usr/bin/python
import lutin.module as module import lutin.debug as debug
import lutin.tools as tools import lutin.tools as tools
import datetime
def get_type(): def get_type():
@@ -23,17 +22,20 @@ def get_compagny_name():
return "atria-soft" return "atria-soft"
def get_maintainer(): def get_maintainer():
return ["Mr DUPIN Edouard <yui.heero@gmail.com>"] return "authors.txt"
def create(target, module_name): def configure(target, my_module):
my_module = module.Module(__file__, module_name, get_type())
my_module.add_src_file([ my_module.add_src_file([
'test/main.cpp', 'test/main.cpp',
'test/declareProperties.cpp', 'test/declareProperties.cpp',
'test/test_list.cpp', 'test/test_list.cpp',
'test/test_range.cpp', 'test/test_range.cpp',
'test/test_value.cpp' 'test/test_value.cpp'
]) ])
my_module.add_module_depend(['eproperty', 'gtest', 'test-debug']) my_module.add_depend([
return my_module 'eproperty',
'gtest',
'test-debug'
])
return True

View File

@@ -1,5 +1,4 @@
#!/usr/bin/python #!/usr/bin/python
import lutin.module as module
import lutin.tools as tools import lutin.tools as tools
import lutin.debug as debug import lutin.debug as debug
import os import os
@@ -21,37 +20,38 @@ def get_compagny_name():
return "atria-soft" return "atria-soft"
def get_maintainer(): def get_maintainer():
return ["Mr DUPIN Edouard <yui.heero@gmail.com>"] return "authors.txt"
def get_version(): def get_version():
return [0,2,0] return "version.txt"
def create(target, module_name): def configure(target, my_module):
my_module = module.Module(__file__, module_name, get_type()) my_module.add_extra_flags()
my_module.add_extra_compile_flags()
my_module.add_src_file([ my_module.add_src_file([
'eproperty/debug.cpp', 'eproperty/debug.cpp',
'eproperty/Property.cpp', 'eproperty/Property.cpp',
'eproperty/InterfaceData.cpp', 'eproperty/InterfaceData.cpp',
'eproperty/details/Range.cpp', 'eproperty/details/Range.cpp',
'eproperty/details/Value.cpp', 'eproperty/details/Value.cpp',
]) ])
my_module.add_header_file([ my_module.add_header_file([
'eproperty/debug.h', 'eproperty/debug.hpp',
'eproperty/Value.h', 'eproperty/Value.hpp',
'eproperty/Interface.h', 'eproperty/Interface.hpp',
'eproperty/InterfaceData.h', 'eproperty/InterfaceData.hpp',
'eproperty/Property.h', 'eproperty/Property.hpp',
'eproperty/PropertyType.h', 'eproperty/PropertyType.hpp',
'eproperty/Range.h', 'eproperty/Range.hpp',
'eproperty/List.h', 'eproperty/List.hpp',
'eproperty/details/Range.hxx', 'eproperty/details/Range.hxx',
'eproperty/details/Value.hxx', 'eproperty/details/Value.hxx',
]) ])
my_module.add_module_depend(['etk']) my_module.add_depend([
my_module.add_path(tools.get_current_path(__file__)) 'etk'
my_module.compile_flags('c++', [ ])
"-DEPROPERTY_VERSION=\"\\\"" + tools.version_to_string(get_version()) + "\\\"\"" my_module.add_path(".")
]) my_module.add_flag('c++', [
return my_module "-DEPROPERTY_VERSION=\"\\\"" + tools.version_to_string(get_version()) + "\\\"\""
])
return True

View File

@@ -1,19 +0,0 @@
#!/usr/bin/python
import monkModule
import monkTools as tools
import os
def get_desc():
return "E-property simple property interface"
def create():
# module name is 'ewol' and type binary.
myModule = monkModule.Module(__file__, 'eproperty', 'LIBRARY')
# enable doculentation :
myModule.set_website("http://atria-soft.github.io/eproperty/")
myModule.set_website_sources("http://github.com/atria-soft/eproperty/")
myModule.set_path(os.path.join(tools.get_current_path(__file__), "eproperty"))
myModule.set_path_general_doc(os.path.join(tools.get_current_path(__file__), "doc"))
# add the currrent module at the
return myModule

View File

@@ -5,22 +5,22 @@
* *
* @license APACHE v2.0 (see license file) * @license APACHE v2.0 (see license file)
*/ */
#include <etk/etk.h> #include <etk/etk.hpp>
#include <test-debug/debug.h> #include <test-debug/debug.hpp>
//! [eproperty_sample_all] //! [eproperty_sample_all]
//! [eproperty_sample_declare_interface] //! [eproperty_sample_declare_interface]
#include <eproperty/Interface.h> #include <eproperty/Interface.hpp>
//! [eproperty_sample_declare_interface] //! [eproperty_sample_declare_interface]
//! [eproperty_sample_declare_value] //! [eproperty_sample_declare_value]
#include <eproperty/Value.h> #include <eproperty/Value.hpp>
//! [eproperty_sample_declare_value] //! [eproperty_sample_declare_value]
//! [eproperty_sample_declare_list] //! [eproperty_sample_declare_list]
#include <eproperty/List.h> #include <eproperty/List.hpp>
//! [eproperty_sample_declare_list] //! [eproperty_sample_declare_list]
//! [eproperty_sample_declare_range] //! [eproperty_sample_declare_range]
#include <eproperty/Range.h> #include <eproperty/Range.hpp>
//! [eproperty_sample_declare_range] //! [eproperty_sample_declare_range]
//! [eproperty_sample_declare_an_enum] //! [eproperty_sample_declare_an_enum]

View File

@@ -7,9 +7,9 @@
*/ */
#define NAME "Empty" #define NAME "Empty"
#include <etk/types.h> #include <etk/types.hpp>
#include <etk/etk.h> #include <etk/etk.hpp>
#include <test-debug/debug.h> #include <test-debug/debug.hpp>
#include <gtest/gtest.h> #include <gtest/gtest.h>
int main(int _argc, const char *_argv[]) { int main(int _argc, const char *_argv[]) {

1
version.txt Normal file
View File

@@ -0,0 +1 @@
0.4.0