On the other hand, you might be able to go the other way, but you'd have to build some helper functions to convert a raw unsigned transaction from bitcoind, to collect all the blockchain data that is needed for Armory to verify the tx before signing. Armory assumes all transactions will always be signed by a dumb device with no blockchain -- there is no alternative form.
This is not standardized in any way. Maybe one day it will be.
Ok I am actually trying to build an exchange and the idea is to have cold warm and hot wallets. The cold would be using offline armory and the hot would be using online armory. The warm wallet will be built using either armory daemon or bitcoind. I didnt know armory daemon was not complete. So like you explained, I can use bitcoind and then before sending the unsigned transaction to cold storage, I would need add extra data to the transaction.
What about signing a transaction, can that be done using bitcoind or do i need to implement a command specific to armory's requirements?
I'm not sure what you're asking with the last question. If you are signing with bitcoind (can it do offline signing?) then you can just broadcast it with any network-connected app once you get it back online. Armory's default is to pass in this decorated-unsigned-tx, and return the same decorated-signed-tx to the online computer. That Armory instance will "prepareFinalTx().serialize()" which converts the decorated-tx to a byte string appropriate to be sent over the wire.
Btw, we do have many users leveraging armoryd as their backend, it just requires a bit of work to fill in the gaps. One of the nice things about armoryd.py is that it's pretty easy to adapt it to whatever you need to do: there's a clear place to put code everytime a new tx comes in, everytime a new wallet-relevant tx comes in, and every new block. You don't have to operate through RPC, you can just program your hooks directly in.
Also looking at armoryd.py i notice many new jsronrpc methods not found in the original bitcoin API calls list (https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list) these methods have a prefix of 'jsonrpc' so im thinking they are newly added to the api call list but wiki does not show them.