History log of /haiku/src/libs/linprog/Variable.cpp
Revision Date Author Comments
# 3a7067dc 31-Aug-2012 czeidler <haiku@clemens-zeidler.de>

Improve ToString output.


# 3fed1a15 05-Aug-2012 Alex Smith <alex@alex-smith.me.uk>

Get app_server working on x86_64.

With this commit, app_server now compiles and runs at boot! Nothing
particularly interesting happens, just the blue background and a mouse
pointer. Remote backends are broken and not compiled in, see #8834.
Note that it won't be possible to build this quite yet, need to get
the FreeType package uploaded.


# bad1d6ba 01-Feb-2012 Alex Wilson <yourpalal2@gmail.com>

Make Variable::SetRange() more forgiving.


# 0a408e49 31-Jan-2012 Alex Wilson <yourpalal2@gmail.com>

Make it possible to have a Variable not belonging to any LinearSpec.


# ef93b55d 13-Mar-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

- Areas with same tabs are put in a column/row automtically. Move preferred size constraint from Area to the column/row. This avoids a "spring" effect of the
quadratic solver if multiple Areas are in the same column/row.
- Replace GetString by ToString.
- some clean up



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40941 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 82867791 08-Feb-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Make kp_solve interface work again.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40384 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a0ad88e0 26-Jan-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Fix min/ max calculation by removing all soft constraints before doing so. Smaller fixes.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40297 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5440f6fe 13-Dec-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Refactor the linear programming class to use a minimal solver interface class and implement the interface for lp_solve. As a result lp_solve is not visible to the outside any more. This interface could be used to use other solvers as well. Rename operator constants to no clash with lp_solve constants.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39829 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 067f47a3 29-Nov-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Move lp_solve dependency completely into LinearSpec. Clean up and some more memory allocation checks.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39681 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fc691d7d 05-Oct-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

- Remove lp_solve dependencies form Variable class and put everything into LinearSpec. As a side effect Variable management is a bit more consistence now. We want to replace lp_solve soon so it will be easier to replace it just in LinearSpec.
- Update copyrights.
- Lot of small things related to the Variable refactoring.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38892 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cd88ee00 20-Sep-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

More cleanup and BList -> BObjectList.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38742 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 601eded9 20-Sep-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

- Hide constraint header in Area file.
- Start to replace BList with BObjectList.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38741 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0401a9c7 19-Sep-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Remove unused fOwner variable. Cleanup.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38740 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 43b24b87 19-Sep-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Simplify code and clean up.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38738 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b329767e 19-Sep-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Clean up.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38737 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 27c4d40f 23-Aug-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

lp_solve takes real not double values. Despite of that also the max real values are to big and lp_slove has problems to solve the constraints. So choose a default range big enough for UI stuff.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38312 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4667e77f 16-Aug-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Set a more reasonable Variable range then the default one ([0, inf)).



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38166 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b8ec67f4 06-Dec-2009 Stephan Aßmus <superstippi@gmx.de>

* Simplified and optimized a lot the "ToString()" debugging facilities.
* *::Index() is now const, thanks to the BList improvements.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34521 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 676ef01b 15-Oct-2009 Axel Dörfler <axeld@pinc-software.de>

* Applied patch by Hong Yul Yang to update linprog.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33609 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5bced18e 10-Mar-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

ALM/linprog patch by Christof Lutteroth:
* Got rid of class ObjFunctionSummand. Both the constraint summands and
the objective function summands are now stored using class Summand.
* Some method names are more BeOS compliant now: SetX instead of ChangeX.
* linprog test code now uses new AddConstraint methods.
* CalculateMinSize and CalculateMaxSize did not free the memory they
allocated.
* Removed inappropriate setter and getter methods.
* Memory allocated in class Constraint is freed now.
* Other small changes.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24351 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 03069455 24-Feb-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Patch by Christof Lutteroth:
* copyright headers for the files of the libraries linprog and alm
* new class Summand for representing summands in a linear constraint
* merged class SoftConstraint into class Constraint; Constraint now
supports both soft and hard constraint functionality
* new AddConstraint methods in class LinearSpec for directly setting
constraints with 1 to 4 summands
* code cleanups by using aforementioned AddConstraint methods
* a new very simple test application for alm
* some style corrections


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24108 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a101e99a 06-Feb-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added libalm.so and its dependency liblinprog.so. libalm.so provides a
BLayout implementation (BALMLayout) using the Auckland Layout Model
(ALM). The original ALM was implemented by Christof Lutteroth, the
Haiku/C++ version by James Kim.
The code needs some review, but the test programs seem to work fine.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23889 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3a7067dc19a8d8b2064d380de6e3ab9ec33f6191 31-Aug-2012 czeidler <haiku@clemens-zeidler.de>

Improve ToString output.


# 3fed1a15f58e8d6fe6b492f3b94bb3625ffeddbd 05-Aug-2012 Alex Smith <alex@alex-smith.me.uk>

Get app_server working on x86_64.

With this commit, app_server now compiles and runs at boot! Nothing
particularly interesting happens, just the blue background and a mouse
pointer. Remote backends are broken and not compiled in, see #8834.
Note that it won't be possible to build this quite yet, need to get
the FreeType package uploaded.


# bad1d6ba7e5ccd61463e13e23b6f6b661c1e86b3 01-Feb-2012 Alex Wilson <yourpalal2@gmail.com>

Make Variable::SetRange() more forgiving.


# 0a408e4992b7dbce2a1cb64267c98297b5282010 31-Jan-2012 Alex Wilson <yourpalal2@gmail.com>

Make it possible to have a Variable not belonging to any LinearSpec.


# ef93b55df49f5296bdb03867215cb1793596e845 13-Mar-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

- Areas with same tabs are put in a column/row automtically. Move preferred size constraint from Area to the column/row. This avoids a "spring" effect of the
quadratic solver if multiple Areas are in the same column/row.
- Replace GetString by ToString.
- some clean up



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40941 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8286779101e70df778f5f086dd5bb5a997e4dc6f 08-Feb-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Make kp_solve interface work again.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40384 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a0ad88e0020787e69b41080af9d707db42aad924 26-Jan-2011 Clemens Zeidler <clemens.zeidler@googlemail.com>

Fix min/ max calculation by removing all soft constraints before doing so. Smaller fixes.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40297 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5440f6fee398073e8359b992a17b0943d39e6ff0 13-Dec-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Refactor the linear programming class to use a minimal solver interface class and implement the interface for lp_solve. As a result lp_solve is not visible to the outside any more. This interface could be used to use other solvers as well. Rename operator constants to no clash with lp_solve constants.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39829 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 067f47a3eed22ed903463892f1a4fc81bc237563 29-Nov-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Move lp_solve dependency completely into LinearSpec. Clean up and some more memory allocation checks.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39681 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fc691d7de2182d23659b86d87c9c36b0feaa6b40 05-Oct-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

- Remove lp_solve dependencies form Variable class and put everything into LinearSpec. As a side effect Variable management is a bit more consistence now. We want to replace lp_solve soon so it will be easier to replace it just in LinearSpec.
- Update copyrights.
- Lot of small things related to the Variable refactoring.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38892 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cd88ee006ddb309d3c0b96698d04a9a515c27aea 20-Sep-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

More cleanup and BList -> BObjectList.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38742 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 601eded950be7b7abf8fe5ce8c5b0064f631e10d 20-Sep-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

- Hide constraint header in Area file.
- Start to replace BList with BObjectList.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38741 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0401a9c7120dd0faded99a4b1946169fbb9bcf46 19-Sep-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Remove unused fOwner variable. Cleanup.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38740 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 43b24b87de3aaf7504084891b1b9ad43fc4711b2 19-Sep-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Simplify code and clean up.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38738 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b329767e2fd45f1b0960ae8f767fc42f94a53cc8 19-Sep-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Clean up.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38737 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 27c4d40fd16d210aa2368cd3bd1e200bcf128180 23-Aug-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

lp_solve takes real not double values. Despite of that also the max real values are to big and lp_slove has problems to solve the constraints. So choose a default range big enough for UI stuff.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38312 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4667e77fe17144869e4465e14a44eb78794ce259 16-Aug-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Set a more reasonable Variable range then the default one ([0, inf)).



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38166 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b8ec67f491da3c6ddad3e1c55d70400fdab4961b 06-Dec-2009 Stephan Aßmus <superstippi@gmx.de>

* Simplified and optimized a lot the "ToString()" debugging facilities.
* *::Index() is now const, thanks to the BList improvements.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34521 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 676ef01ba74e966b1ce7f4117372bbc5f1290cc4 15-Oct-2009 Axel Dörfler <axeld@pinc-software.de>

* Applied patch by Hong Yul Yang to update linprog.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33609 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5bced18eab0b1318f3293c1c5c5b1a9d52fa3770 10-Mar-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

ALM/linprog patch by Christof Lutteroth:
* Got rid of class ObjFunctionSummand. Both the constraint summands and
the objective function summands are now stored using class Summand.
* Some method names are more BeOS compliant now: SetX instead of ChangeX.
* linprog test code now uses new AddConstraint methods.
* CalculateMinSize and CalculateMaxSize did not free the memory they
allocated.
* Removed inappropriate setter and getter methods.
* Memory allocated in class Constraint is freed now.
* Other small changes.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24351 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0306945545b0fc20ec4da7cff2e99ac39f48d726 24-Feb-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Patch by Christof Lutteroth:
* copyright headers for the files of the libraries linprog and alm
* new class Summand for representing summands in a linear constraint
* merged class SoftConstraint into class Constraint; Constraint now
supports both soft and hard constraint functionality
* new AddConstraint methods in class LinearSpec for directly setting
constraints with 1 to 4 summands
* code cleanups by using aforementioned AddConstraint methods
* a new very simple test application for alm
* some style corrections


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24108 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a101e99aada54cf545bbf25e0cbb6329ad45535e 06-Feb-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added libalm.so and its dependency liblinprog.so. libalm.so provides a
BLayout implementation (BALMLayout) using the Auckland Layout Model
(ALM). The original ALM was implemented by Christof Lutteroth, the
Haiku/C++ version by James Kim.
The code needs some review, but the test programs seem to work fine.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23889 a95241bf-73f2-0310-859d-f6bbb57e9c96